คำถามติดแท็ก mercurial

Mercurial เป็น DVCS แบบโอเพนซอร์สที่รวดเร็ว (Distributed Version Control System)

25
Mercurial และ Git ต่างกันอย่างไร
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันใช้ git มาระยะหนึ่งแล้วบน Windows (กับ msysGit) และฉันชอบแนวคิดของการควบคุมแหล่งที่มาแบบกระจาย เมื่อไม่นานมานี้ฉันได้ดู Mercurial (hg) และมันน่าสนใจ อย่างไรก็ตามฉันไม่สามารถคลุมหัวความแตกต่างระหว่าง hg และ git มีใครทำการเปรียบเทียบแบบเคียงข้างกันระหว่างคอมไพล์และ hg หรือไม่ ฉันสนใจที่จะรู้ว่าสิ่งที่แตกต่าง hg และ git โดยไม่ต้องกระโดดลงไปในการสนทนาแฟนบอย

11
Git and Mercurial - เปรียบเทียบและความเปรียบต่าง
ในขณะนี้ฉันใช้การโค่นล้มสำหรับโครงการส่วนตัวของฉัน มากขึ้นเรื่อย ๆ ฉันได้ยินสิ่งดีๆเกี่ยวกับ Git และ Mercurial และ DVCS โดยทั่วไป ฉันต้องการให้สิ่งที่ DVCS ทั้งหมดเป็นเรื่องวน แต่ฉันก็ไม่คุ้นเคยกับตัวเลือกทั้งสอง Mercurial และ Git ต่างกันอย่างไร? หมายเหตุ: ฉันไม่ได้พยายามหาว่าอันไหนที่ "ดีที่สุด" หรือแม้แต่อันที่ฉันควรเริ่มต้นด้วย ฉันกำลังมองหาพื้นที่สำคัญที่พวกเขามีลักษณะคล้ายกันและที่พวกเขาแตกต่างกันเพราะฉันสนใจที่จะรู้ว่าพวกเขาแตกต่างกันในแง่ของการดำเนินงานและปรัชญา

7
อย่างไรและ / หรือทำไมการรวมกันใน Git ดีกว่าใน SVN
ฉันเคยได้ยินในไม่กี่ที่ที่หนึ่งในเหตุผลหลักที่ว่าทำไมระบบควบคุมเวอร์ชันที่กระจายส่องแสงนั้นเป็นการผสานที่ดีกว่าเครื่องมือแบบดั้งเดิมอย่าง SVN อันนี้เป็นเพราะความแตกต่างโดยธรรมชาติในการทำงานของทั้งสองระบบหรือการใช้งาน DVCS เฉพาะเช่น Git / Mercurial เพียงแค่มีการรวมอัลกอริทึมที่ฉลาดกว่า SVN หรือไม่

11
Mercurial ค้างอยู่“ กำลังรอการล็อค”
มีหน้าจอ bluescreen ใน windows ในขณะที่ทำการโคลนคลังเก็บสินค้า หลังจากรีบูตตอนนี้ฉันได้รับข้อความนี้สำหรับคำสั่ง hg เกือบทั้งหมด: c: \ src \> hg กระทำ กำลังรอการล็อกที่เก็บข้อมูล c: \ src \ McVrsServer ที่จัดขึ้นโดย '\ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ …
346 mercurial 

5
อะไรคือข้อแตกต่างระหว่าง hg forget และ hg remove?
ฉันต้องการให้ Mercurial ลบไฟล์หลาย ๆ ไฟล์ออกจากสถานะปัจจุบันของที่เก็บ อย่างไรก็ตามฉันต้องการให้ไฟล์มีอยู่ในประวัติก่อนหน้า วิธีทำforgetและremoveแตกต่างกันและพวกเขาสามารถทำสิ่งที่ฉันต้องการได้หรือไม่

10
วิธีค้นหา Git และ Mercurial ทั้งหมดที่คอมมิตในที่เก็บเพื่อหาสตริงที่แน่นอน?
ฉันมีที่เก็บ Git ซึ่งมีสาขาไม่กี่แห่งและห้อยต่องแต่ง ฉันต้องการค้นหาข้อผูกพันดังกล่าวทั้งหมดในที่เก็บสำหรับสตริงเฉพาะ ฉันรู้วิธีรับบันทึกการกระทำทั้งหมดในประวัติศาสตร์ แต่สิ่งเหล่านี้ไม่รวมถึงกิ่งไม้หรือ blob dangling เพียงประวัติของ HEAD ฉันต้องการให้พวกเขาทั้งหมดเพื่อค้นหาความมุ่งมั่นที่ผิดพลาด ฉันต้องการทราบวิธีการทำเช่นนี้ใน Mercurial เนื่องจากฉันกำลังพิจารณาสวิตช์
287 git  mercurial 

9
จะบันทึกชื่อผู้ใช้และรหัสผ่านด้วย Mercurial ได้อย่างไร
ฉันใช้ Mercurial ในโครงการส่วนบุคคลและฉันพิมพ์ชื่อผู้ใช้และรหัสผ่านทุกครั้งที่ต้องการส่งบางสิ่งไปยังเซิร์ฟเวอร์ ฉันพยายามเพิ่มสิ่งต่อไปนี้ลงใน.hgrcไฟล์ในโฮมไดเร็กตอรี่ของฉัน, แต่ดูเหมือนว่าจะถูกละเว้นอย่างสมบูรณ์. [ui] username = MY_USER_NAME password = MY_PASSWORD วิธีการทำเช่นนี้ถูกวิธี?
269 mercurial  hgrc 

7
Mercurial - เปลี่ยนกลับเป็นเวอร์ชันเก่าและดำเนินการต่อจากที่นั่น
ฉันใช้ Mercurial ในพื้นที่สำหรับโครงการ (เป็นธุรกรรมซื้อคืนเดียวที่ไม่มีการผลัก / ดึงไปยัง / จากที่อื่น) ในวันที่มันมีประวัติเชิงเส้น อย่างไรก็ตามสิ่งที่ฉันกำลังทำอยู่ตอนนี้ฉันรู้แล้วว่ามันเป็นวิธีการที่แย่มากและฉันต้องการกลับไปที่เวอร์ชันก่อนที่ฉันจะเริ่มและนำไปใช้ในวิธีที่ต่างออกไป ฉันบิตสับสนกับbranch/ revert/ update -Cคำสั่งใน Mercurial โดยทั่วไปฉันต้องการเปลี่ยนกลับไปใช้เวอร์ชัน 38 (ปัจจุบันอยู่ที่ 45) และมีข้อผูกพันต่อไปของฉันมี 38 ในฐานะผู้ปกครองและดำเนินการต่อจากที่นั่น ฉันไม่สนใจว่าการแก้ไข 39-45 จะสูญหายไปตลอดกาลหรือสิ้นสุดในสาขาของตนเอง ฉันต้องการคำสั่ง / ชุดคำสั่งใด

4
วิธีปิดสาขาคุณลักษณะอย่างถูกต้องใน Mercurial ได้อย่างไร
feature-xฉันได้เสร็จสิ้นการทำงานในสาขาสารคดี ฉันต้องการที่จะผสานผลกลับไปที่defaultสาขาและใกล้เพื่อให้ได้รับการกำจัดของมันในการส่งออกของfeature-xhg branches ฉันมาด้วยสถานการณ์ต่อไปนี้ แต่มีปัญหาบางอย่าง: $ hg up default $ hg merge feature-x $ hg ci -m merge $ hg up feature-x $ hg ci -m 'Closed branch feature-x' --close-branch ดังนั้นfeature-xbranch (changests 40- 41) จะถูกปิด แต่มีหนึ่ง head ใหม่เซ็ตการเปลี่ยนแปลง branch ที่ปิด44ซึ่งจะถูกแสดงในhg headsทุกครั้ง: $ hg log ... o 44 Closed branch feature-x …

22
Mercurial สำหรับผู้เริ่มต้น: คู่มือปฏิบัติขั้นสุดท้าย
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ แรงบันดาลใจจากGit สำหรับผู้เริ่มต้น: คู่มือปฏิบัติที่ชัดเจน นี่คือการรวบรวมข้อมูลเกี่ยวกับการใช้ Mercurial สำหรับผู้เริ่มต้นเพื่อการใช้งานจริง ระดับเริ่มต้น - โปรแกรมเมอร์ที่มีการควบคุมแหล่งสัมผัสโดยไม่เข้าใจเป็นอย่างดี ในทางปฏิบัติ - ครอบคลุมสถานการณ์ที่ผู้ใช้ส่วนใหญ่มักพบเจอ - การสร้างที่เก็บการแยกการผสานการดึง / การผลักจาก / สู่ที่เก็บระยะไกลเป็นต้น หมายเหตุ : อธิบายวิธีทำบางสิ่งให้สำเร็จแทนที่จะทำบางสิ่ง จัดการกับหนึ่งคำถามต่อคำตอบ ตอบอย่างชัดเจนและรัดกุมที่สุด แก้ไข / ขยายคำตอบที่มีอยู่แทนที่จะสร้างคำตอบใหม่ในหัวข้อเดียวกัน โปรดระบุลิงก์ไปยังMercurial wikiหรือHG Bookสำหรับผู้ที่ต้องการเรียนรู้เพิ่มเติม คำถาม: การติดตั้ง / การตั้งค่า จะติดตั้ง Mercurial อย่างไร วิธีการตั้งค่า Mercurial คุณจะสร้างโครงการ / พื้นที่เก็บข้อมูลใหม่ได้อย่างไร คุณจะกำหนดค่าให้ละเว้นไฟล์ได้อย่างไร? ทำงานกับรหัส คุณจะได้รับรหัสล่าสุดได้อย่างไร คุณจะตรวจสอบรหัสได้อย่างไร คุณยอมรับการเปลี่ยนแปลงอย่างไร …

4
วิธีทำ 'hg remove' ของ Mercurial สำหรับไฟล์ที่หายไปทั้งหมด?
ฉันใช้สิ่งนี้เพื่อลบไฟล์ออกจาก repo: hg remove <full file path> คำสั่งอะไรที่คุณสามารถใช้เพื่อทำhg removeในทุกไฟล์ที่ถูกลบในประเทศ? โดยลบในประเทศผมหมายถึงผู้ที่แสดงด้วยเมื่อคุณทำ !hg status สำหรับการเพิ่มคุณสามารถทำได้hg addเพื่อเพิ่มไฟล์ใหม่ทั้งหมด (ที่นำหน้าด้วย?)
224 mercurial 

5
วิธีแยกสาขากับ TortoiseHG
ฉันดาวน์โหลด TortoiseHg 1.0 เพื่อการประเมินผล สำหรับชีวิตของฉันฉันไม่สามารถหาวิธีสร้างสาขาได้ ดูเหมือนว่าจะเข้าใจสาขา (เช่นในเบราว์เซอร์ที่เก็บของ) แต่ฉันดูเหมือนจะไม่สามารถหาวิธีสร้างสาขาได้ ดูเหมือนว่าความสามารถพื้นฐานดังกล่าวเนื่องจากประโยชน์ที่ได้รับการขนานนามของ DVC คือการแยกสาขาที่มีน้ำหนักเบา ฉันไปรอบ ๆ และไม่พบการสนทนาในหัวข้อนี้มาก (อย่างน้อยสำหรับรุ่นล่าสุด) ดังนั้นฉันจึงต้องสมมติว่าฉันพลาดอะไรบางอย่างใช่มั้ย อัปเดต:ดังนั้นฉันจึงตั้งค่าสถานะคำตอบของแช้ดเบิร์ชด้านล่างเพื่อตอบปัญหา "สาขาใหม่" ในขณะที่เขาชี้ให้เห็นอย่างถูกต้องคุณจะกระทำและจากนั้นคลิกที่ปุ่มสาขาเพื่อเปิดกล่องโต้ตอบการบำรุงรักษาสาขาซึ่งเป็นที่ที่คุณสร้างสาขาใหม่ ฉันอยากให้พวกเขาเลือกเมนูบริบทสำหรับเรา เมื่อคุณแยกแล้วคำถามธรรมชาติถัดไปคือวิธีผสานและนี่ก็ไม่ชัดเจนเช่นกัน ปรากฎว่าตัวเลือกนั้นถูกฝังอยู่ใน repository explorer คุณต้องเลือกส่วนหัวของสาขาอื่นคลิกขวาแล้วเลือก "รวมกับ ... "

8
Mercurial: จะแก้ไขการกระทำครั้งสุดท้ายได้อย่างไร
ฉันกำลังมองหาส่วนต่อต้านgit commit --amendใน Mercurial นั่นคือวิธีแก้ไขความมุ่งมั่นที่สำเนาการทำงานของฉันเชื่อมโยงอยู่ ฉันสนใจเฉพาะการกระทำครั้งสุดท้ายไม่ใช่การกระทำก่อนหน้านี้โดยพลการ ข้อกำหนดสำหรับขั้นตอนการแก้ไขนี้คือ: หากเป็นไปได้ไม่ควรมีส่วนขยายใด ๆ ต้องไม่ต้องใช้ส่วนขยายที่ไม่ใช่ค่าเริ่มต้นเช่นส่วนขยายที่ไม่ได้มาพร้อมกับการติดตั้ง Mercurial อย่างเป็นทางการ หากมุ่งมั่นที่จะแก้ไขเป็นหนึ่งหัวของสาขาปัจจุบันของฉันไม่ควรสร้างหัวใหม่ หากความมุ่งมั่นไม่ใช่หัวหน้าอาจจะสร้างหัวใหม่ โพรซีเดอร์ควรปลอดภัยในวิธีที่หากการแก้ไขไม่สำเร็จด้วยเหตุผลใดก็ตามฉันต้องการให้สำเนาการทำงานและสถานะที่เก็บเดียวกันทำงานเหมือนคืนก่อนการแก้ไข ด้วยคำอื่น ๆ หากการแก้ไขตัวเองสามารถล้มเหลวควรมีขั้นตอนที่ไม่ปลอดภัยในการเรียกคืนสถานะการคัดลอกและการทำงานที่เก็บ ฉันหมายถึง "ความล้มเหลว" ซึ่งอยู่ในลักษณะของการแก้ไขขั้นตอน (เช่นความขัดแย้ง) ไม่ใช่ปัญหาเกี่ยวกับระบบไฟล์ (เช่นข้อ จำกัด การเข้าถึงไม่สามารถล็อคไฟล์เพื่อเขียน ... ) อัปเดต (1): ขั้นตอนจะต้องเป็นไปโดยอัตโนมัติดังนั้นจึงสามารถดำเนินการได้โดยไคลเอนต์ GUI โดยไม่ต้องมีการโต้ตอบกับผู้ใช้ อัปเดต (2): ไฟล์ในไดเร็กทอรีการทำงานต้องไม่ถูกแตะต้อง (อาจมีการล็อคระบบไฟล์ในไฟล์ที่แก้ไขบางไฟล์) โดยเฉพาะอย่างยิ่งหมายความว่าวิธีที่เป็นไปได้อาจไม่จำเป็นต้องมีไดเรกทอรีการทำงานที่สะอาด

10
มีวิธีใดบ้างที่จะลบการผูกพันใน Mercurial?
ดังนั้นฉันจึงทำผิดพลาดอย่างต่อเนื่องใน Mercurial บ่อยครั้งฉันจะเริ่มทำงานโดยไม่ทำ "hg pull" และ "hg update" เมื่อฉันพยายามผลักดันการเปลี่ยนแปลงฉันได้รับข้อผิดพลาด มีวิธีใดที่จะลบการกระทำในท้องถิ่นของฉันเพื่อให้ฉันสามารถหลีกเลี่ยงการสร้างหลายหัวสาขา ฯลฯ ฉันแค่ต้องการลบการกระทำในท้องถิ่นของฉันรวมการเปลี่ยนแปลงของฉันกับเคล็ดลับแล้วมอบหมายอีกครั้ง ฟังดูง่ายใช่มั้ย ฉันไม่สามารถหาวิธีใด ๆ ที่จะลบการกระทำในท้องถิ่นได้อย่างง่ายดายดังนั้นฉันจึงสามารถรวมเข้ากับเคล็ดลับได้อย่างหมดจด อีกครั้งฉันแค่พยายามลบการกระทำในท้องถิ่นที่ทำด้วย "hg ci" ฉันไม่ต้องการแก้ไขไฟล์กลับคืน ฯลฯ
209 mercurial 

9
ฉันจะลบไฟล์ที่ไม่ได้ติดตามทั้งหมดออกจากไดเรกทอรีการทำงานของฉันใน Mercurial ได้อย่างไร
เป็นไปได้หรือไม่ที่จะลบไฟล์ที่ไม่ได้ติดตามทั้งหมดออกจากไดเรกทอรีทำงานของฉัน? สมมติว่าฉันเพิ่มไฟล์จำนวนมากลงในไดเรกทอรีการทำงานของฉันไม่ได้เพิ่มผ่าน 'hg add' และตอนนี้ต้องการกำจัดไฟล์ใหม่เหล่านั้นทั้งหมดหรือไม่ ฉันใช้ Windows แม้ว่าฉันกำลังใช้ PowerShell ดังนั้นโซลูชันแบบรวมจึงเป็นไปได้ที่นี่
207 mercurial 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.