การแยกโครงการในกระบวนการ Github


25

มีโครงการใน Github ที่ฉันชอบและต้องการใช้เป็นส่วนใหญ่ มีบางสิ่งที่ฉันต้องการจะทำแตกต่าง / ลบออกซึ่งไม่สมเหตุสมผลกับสิ่งที่ฉันต้องการ / ต้องการ นอกจากนี้ฉันต้องการเพิ่มบางสิ่งเช่นกัน

ตามที่ฉันเข้าใจฉันควรแยกโครงการและฉันสามารถเปลี่ยนแปลงสิ่งที่ฉันต้องการและผลักดันกลับไปที่ส้อมของฉัน จากนั้นฉันก็ต้องการที่จะดึงการเปลี่ยนแปลงจากโครงการเดิมเป็นครั้งคราวดังนั้นฉันจึงได้รับการแก้ไขข้อบกพร่อง / คุณสมบัติล่าสุด

ฉันเลิกใช้แล้วฉันคิดว่ามันควรจะใช้ได้ไหม จะนำมาซึ่งการเปลี่ยนแปลงจากโครงการเดิมได้อย่างไร


1
คุณอาจพบว่ามีประโยชน์: stackoverflow.com/questions/3329943/…
Michael Durrant

คำตอบ:


18

ทำส้อมแล้วสร้างกิ่งทันที

ตอนนี้คุณมีต้นแบบ "แตะต้อง" ที่สามารถปรับปรุงตัวเองก้าวไปข้างหน้าจะได้รับการเปลี่ยนแปลงล่าสุดกับgit pulls

ทำให้สาขาของคุณอยู่ในพื้นที่โดยไม่ต้องกดไปที่ระยะไกลและคุณสามารถทำrebaseสิ่งต่อไปนี้เพื่อคุณ:

  • บันทึกการเปลี่ยนแปลงของคุณ
  • ใช้การเปลี่ยนแปลงล่าสุดจากต้นแบบไปยังสาขาของคุณ (การเปลี่ยนแปลงที่มาจากการอัปเดตจากระยะไกล)
  • ใช้การเปลี่ยนแปลงของคุณอีกครั้งอีกครั้งด้านบนของรหัสที่อัปเดตจากต้นแบบ (หรือสาขาดั้งเดิมอื่น ๆ )

ในที่สุดเมื่อคุณทำเสร็จแล้วให้รวมกลับเข้าไปในต้นแบบ (หรือสาขาใดก็ได้ที่แยกจากจุดเริ่มต้นมาจาก) ในพื้นที่แล้วส่งคำขอดึงสำหรับเจ้าของที่แท้จริงเพื่อดึงเข้ามา

นั่นเป็นหนึ่งเวิร์กโฟลว์ (หรือ "forkflow") ต่อไปตามที่ฉันเข้าใจ คนอื่น ๆ ยินดีที่จะแสดงความคิดเห็นหรือแก้ไขหรือเพิ่มรายละเอียดเพิ่มเติม


3
ดูเหมือนจะเป็นเรื่องนอกเรื่องเล็กน้อย มันกล่าวถึงวิธีการ 'ไม่มี' โดยไม่ต้องอธิบายอะไรมากเกี่ยวกับสิ่งที่คุณทำและหลีกเลี่ยงการเข้าสู่คำถามมารยาท คุณสามารถปรับปรุงสิ่งนี้ได้โดยให้ภาพรวมระดับสูงของสิ่งที่คุณทำสำเร็จและอธิบายว่าทำไมมารยาทที่ดีในการทำเช่นนี้
จัสตินมอร์แกน

10

โดยพื้นฐานแล้วคุณมีมัน: เมื่อคุณสร้างส้อมมันเป็นกล่องทรายเล็ก ๆ ของคุณเอง

ฉันคิดว่าสิ่งสำคัญที่คุณต้องทำคือสร้างสาขาทันทีหลังจากที่คุณแยกเพื่อแยกบรรทัดการพัฒนาดั้งเดิมออกจากของคุณเอง ไม่ว่าคุณจะพัฒนาในสาขานี้หรือในระดับปริญญาโทส่วนใหญ่เป็นเรื่องของรสนิยมส่วนตัว สิ่งหนึ่งที่จะป้องกันไม่ให้ฉันพัฒนาในระดับปริญญาโทคือมันง่ายเกินไปที่จะทำ "git pull" และทำสิ่งผิด

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