วิธีการทำให้ TortoiseHg ดึงสาขาบางอย่างเท่านั้น?


13

ฉันได้โคลนสาขาเริ่มต้นของพื้นที่เก็บข้อมูลขนาดใหญ่และตอนนี้ฉันต้องการที่จะดึงจากเซิร์ฟเวอร์โดยใช้ลูกค้า TortoiseHg

อย่างไรก็ตาม TortoiseHg เสนอที่จะดึงออกมาจากกิ่งไม้ทั้งหมด เป็นไปได้ไหมที่จะสั่งให้ดึงจากสาขาปัจจุบันเท่านั้น?

จนถึงตอนนี้ฉันเห็นคำแนะนำ:

  • ตั้งค่า hook บนฝั่งไคลเอ็นต์เพื่อปฏิเสธ pulls จากกิ่งก้านที่ไม่ต้องการ
  • ตรวจสอบการแก้ไขขาเข้าใน TortoiseHg และดึงเฉพาะส่วนที่เป็นของสาขาปัจจุบัน
  • ใช้ส่วนขยาย Mercurial ACL เพื่อปฏิเสธการเข้าถึงสาขาทั้งหมด แต่สาขาปัจจุบัน

ฉันไม่ชอบโซลูชันเหล่านี้ทั้งหมดเนื่องจากทั้งหมดเป็นลูกค้า ในพวกเขาทั้งหมด TortoiseHg ดึงกิ่งก้านสาขาทั้งหมด (แม้ในส่วนที่สองซึ่งการแก้ไขที่ถูกดึงจะถูกจัดเรียงเป็นกลุ่มที่แสดงในมุมมองการแก้ไขที่เข้ามา)

hg pull -b BRANCHTortoiseHg มีความเท่าเทียมกันหรือไม่?

ขอบคุณ

แก้ไข

ฉันรู้วิธีการทั้งหมดนี้โดยใช้ไคลเอนต์บรรทัดคำสั่ง Mercurial - hg.exe คำถามนี้เกี่ยวกับไคลเอ็นต์ TortoiseHg GUI โดยเฉพาะ


คุณได้ลองทำสิ่งนี้จากโต๊ะทำงานหรือไม่? ฉันไม่ได้ใช้ Hg ในที่ทำงานดังนั้นฉันจึงไม่สามารถทดสอบได้ที่นี่
MBraedley

ฉันใช้โต๊ะทำงานตลอดเวลาและฉันสามารถหาตัวเลือกใด ๆ ที่นั่นซึ่งจะบอกให้ดึงกระแสหรือสาขาที่แน่นอนเท่านั้น
ทำเครื่องหมาย

คำตอบ:


11

ซึ่งสามารถทำได้จากSynchronizeพื้นที่ของ Workbench คลิกที่SynchronizeรายการในViewเมนูหรือSynchronizeไอคอนแถบเครื่องมือ (ลูกศรสีเขียว 2 ลูกปรากฏขึ้นเป็นวงกลม) ในบานหน้าต่างด้านล่างขวาคลิกOptionsใช่ ป้อนชื่อสาขาที่คุณต้องการดึงลงในBranch:กล่องแก้ไข เสร็จสิ้นการดึงตามปกติ


2
ดูเหมือนว่าจะใช้งานได้ ผมขอแนะนำให้การระบุ.เป็นชื่อสาขาที่วิธีนี้ก็จะมักจะหมายถึงสาขาที่คุณกำลังทำงาน
Helgi

2
เพียงบันทึกสำหรับคนอื่น ๆ : มีSynchronizeรายการภายใต้Repositoryเมนู นั่นไม่ใช่รายการที่คุณกำลังมองหา
George Marian

@ GeorgeMarian ฮ่าจุดดี มันจะดีกว่านี้ถ้าตัวเลือกภายใต้มุมมองเรียกว่า "ตัวเลือกการซิงค์" หรือ "การซิงโครไนซ์" ตัวเลือกนั้นไม่ได้ทำการซิงโครไนซ์ :)
O'Rooney

4
hg pull -r <branch name>  

สำหรับข้อมูลเพิ่มเติม: /programming/5796908/mercurial-how-can-i-import-only-some-chomeets-from-a-repository/5798221#5798221


1
ฉันได้แก้ไขเนื้อหาของคำถาม
ทำเครื่องหมาย

1
@ Kaymar มันใช้-bสำหรับดึงสาขา -rสำหรับการแก้ไข จากความช่วยเหลือสำหรับhg pull: -r --rev REV [+] a remote changeset intended to be added ... -b --branch BRANCH [+] a specific branch you would like to pull
UuDdLrLrSs
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.