ดึงคำขอโดยไม่ต้องใช้ส้อม?


105

ต่อไปนี้เป็นขั้นตอนของการสนับสนุนโค้ดจากหัวข้อ " ฉันจะสนับสนุนโค้ดของผู้อื่นใน GitHub ได้อย่างไร "

  1. แยกโครงการ
  2. แสดงความคิดเห็นที่ดีอย่างน้อยหนึ่งรายการและคอมมิตสะอาดกับที่เก็บ คุณสามารถสร้างสาขาใหม่ได้ที่นี่หากคุณกำลังแก้ไขมากกว่าหนึ่งส่วนหรือคุณสมบัติ
  3. ดำเนินการร้องขอการดึงในเว็บอินเตอร์เฟสของ github

เป็นไปได้หรือไม่ที่จะทำการร้องขอการดึงโดยไม่ต้องซื้อ repo?

เป็นเรื่องน่าเศร้าที่เห็นมากกว่า 20 repos ในบัญชีของฉันซึ่งถูกแยกสำหรับคำขอดึงบางรายการ พวกเขาไม่มีกิจกรรมและไม่มีดาว / ผู้ติดตาม ดูเหมือนว่าฉันแค่ลอกโค้ดของใครบางคนมาเพื่อวันดำ


ทำไมคุณถึงต้องการ?

3
คำถามที่ดี. นอกจากนี้ยังไม่ชัดเจนที่จะอัปเดต 20 repos เหล่านั้นด้วยต้นฉบับ (หรือลบทิ้ง)
Corey Alix

คำตอบ:


96

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


8
คุณช่วยอธิบายได้ไหมว่าคุณจะสร้างคำร้องขอดึงได้อย่างไรหากคุณมีสิทธิ์เข้าถึงสาขาในที่เก็บนั้น
bolinfest

13
GitHub มีคำแนะนำที่ดีเกี่ยวกับเรื่องนี้: help.github.com/articles/creating-a-pull-request
Ryan Bigg

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

24

เมื่อร้องขอดึงของคุณได้รับการยอมรับคุณสามารถลบ repo

หลังจากนั้นให้โคลนโดยตรงจาก repo ต้นน้ำเดิม

หากคุณมีคำขอดึงอื่น ๆ คุณควรสร้างในสาขาของตนเองซึ่งหมายความว่าคุณสามารถลบสาขาที่คุณทำเพื่อจัดการคำขอดึงที่ยอมรับได้อย่างปลอดภัย (เช่นใน " คำขอดึงของฉันถูกรวมสิ่งที่ต้องทำ ต่อไป? ")


2
FYI เมื่อเร็ว ๆ นี้ github ได้เพิ่มปุ่มเพื่อรวมคำขอดึงเพื่อให้ง่าย (และใช้งานง่าย) ในการลบสาขาคำขอดึง: github.com/blog/1335-tidying-up-after-pull-requests
David M

10

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

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

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


อาจจะดีที่สุดที่นี่: 4. รักษาบัญชี Github ที่สองเพื่อจัดการกับสถานการณ์ดึงคำขอและลืมเหล่านี้ ไม่สำคัญว่าบัญชีนั้นจะมี 20 repos ที่ไม่ได้ใช้งานอยู่ในนั้นหรือไม่เนื่องจากไม่ใช่บัญชีหลัก
tanius

7

github รองรับShared Repository Model

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

คำขอดึงมีประโยชน์อย่างยิ่งใน Fork & Pull Model เนื่องจากเป็นวิธีแจ้งผู้ดูแลโครงการเกี่ยวกับการเปลี่ยนแปลงในส้อมของคุณ อย่างไรก็ตามยังมีประโยชน์ใน Shared Repository Model ซึ่งใช้ในการเริ่มต้นการตรวจสอบโค้ดและการอภิปรายทั่วไปเกี่ยวกับชุดการเปลี่ยนแปลงก่อนที่จะรวมเข้ากับสาขาหลัก


5
โปรดสังเกตว่าสิ่งนี้ไม่ได้อธิบายวิธีสร้างคำขอดึงในโมเดลนี้
bolinfest

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