ฉันจะลบเซ็ตการแก้ไขที่ออกใน Mercurial (hg) ได้อย่างไร


14

เมื่อฉันเรียกใช้hg outฉันมี 3 เซ็ตการแก้ไขขาออก ฉันต้องการที่จะทิ้งพวกเขาและย้อนกลับไปสู่สิ่งที่อยู่ในที่เก็บส่วนกลาง อย่างไร?

คำตอบ:


15

ใช้ hg strip 'roots(outgoing())'


1
นอกจากนี้คุณยังสามารถระบุเป้าหมายสำหรับการแก้ไขขาออก (ถ้าคุณไม่มี repo เริ่มต้นหรือคุณต้องการที่จะตัดสัมพันธ์กับ repo อื่น) hg strip 'roots(outgoing(target-name))'โดยใช้
Jason R. Coombs

ขอบคุณ @ JasonR.Coombs นั่นมีประโยชน์มาก ฉันอยากรู้ว่าการเปลี่ยนแปลงขาออก () ขึ้นอยู่กับการเปลี่ยนแปลงอื่น ๆ นอกเหนือจาก URL repo ระยะไกลเริ่มต้น
wbkang

3

อาจ reclone จาก repo ส่วนกลางหรือใช้clone -rเพื่อ reclone เซ็ตการแก้ไขที่จำเป็นเท่านั้น


3

ตัวเลือกอื่นคือการใช้hg strip คำสั่งซึ่งเป็นส่วนหนึ่งของส่วนขยายmq( คิวคิวคิว )

ปรัชญาของ mercurial เป็นประวัติศาสตร์ที่ไม่เปลี่ยนรูปแบบดังนั้นคำสั่งที่จัดการกับประวัติศาสตร์นั้นจะขมวดคิ้ว แต่มีบางครั้งที่การลอกหรือการรีบูตอาจช่วยแก้ปัญหาได้มากกว่าที่พวกเขาทำ

ถ้าคุณใช้TortoiseHgแล้วคุณจะต้องเปิดการใช้งานส่วนขยาย MQ ก่อนหน้า v1.0 THG มันถูกเปิดใช้งานโดยค่าเริ่มต้น แต่หลังจากการสนทนามากมายมันก็ตัดสินใจว่ามันเป็นคุณสมบัติ 'ขั้นสูง' ที่ควรจะถูกทิ้งไว้จนกว่าการใช้งานจะมีประสบการณ์ในการรู้วิธีการเปิดใช้งาน

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