GitHub: เปิดคำขอดึงที่ผสานอีกครั้ง


103
  • ฉันได้ทำการเปลี่ยนแปลงบางอย่าง
  • ฉันส่งคำขอดึง
  • คำขอดึงได้รับการยอมรับและรวมเข้าด้วยกัน
  • เราพบข้อบกพร่อง
  • การเปลี่ยนแปลงถูกลบอีกครั้งในขณะที่ฉันแก้ไขข้อบกพร่อง

ตอนนี้ฉันได้แก้ไขข้อบกพร่องแล้วและต้องการส่งคำขอดึงอีกครั้งพร้อมกับคอมมิตพิเศษ 1 รายการ มีวิธีใดบ้างในการเปิดคำขอดึงหรืออัปเดตอีกครั้งหรือฉันต้องสร้างคำขอดึงใหม่พิมพ์คำอธิบาย ฯลฯ อีกครั้ง Gitorious มีฟีเจอร์นี้และเราเพิ่งย้ายไปที่ GitHub


ฉันอยู่ในสถานการณ์ที่คล้ายกันในวันนี้คือใช้ปุ่ม "ผสานคำขอดึง" ซึ่งโดยค่าเริ่มต้นจะรวมการเปลี่ยนแปลงลงในสาขาเป้าหมายและปิดการประชาสัมพันธ์ ต่อมาฉันพบข้อบกพร่องในการทดสอบซึ่งฉันต้องการให้ผู้พัฒนาดั้งเดิมแก้ไข ฉันต้องการวิธีเปิด PR นี้อีกครั้งเพื่อให้สามารถเพิ่มข้อตกลงเพิ่มเติมใน PR เดียวกันนี้ได้ แต่ทำไม่ได้เนื่องจากไม่มีปุ่มสำหรับเปิด PR อีกครั้ง
SBirthare

คำตอบ:


116

คำตอบน่าจะเป็น: คุณทำไม่ได้

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

อาจเป็นคำขอคุณสมบัติที่ดีสำหรับ GitHub ในอนาคต


8
ฉันไม่รู้ว่ามีการเปลี่ยนแปลงเมื่อใด แต่คุณสามารถแสดงความคิดเห็นและเปิด PR ที่ปิดไปแล้วได้อีกครั้ง
ปอนด์

16
@LB ดูเหมือนว่าคุณจะเปิด PR ที่ปิดไปแล้วและรวมไม่ได้อีกครั้ง
A Kaptur

1
คุณทำได้จริง สมมติว่าคุณได้เปลี่ยนกลับการผสานเริ่มต้นแล้วคุณสามารถสร้างสาขาของ repo หลักได้และในสาขาใหม่นี้เพียงแค่คืนค่าคอมมิตที่ย้อนกลับการผสาน
SsjCosty

7
@SsjCosty แต่นั่นไม่ใช่การเปิด PR แบบปิดและผสานอีกครั้ง คุณสามารถเปิดคำขอดึงใหม่ได้ตลอดเวลาซึ่งเป็นสิ่งที่โซลูชันของคุณต้องการ
Adam Grant

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

12

ฉันเพิ่งเปิดคำขอดึงอีกครั้งสำเร็จโดย

  1. แสดงความคิดเห็นเกี่ยวกับคำขอดึง
  2. คลิกปุ่ม "ส่งและเปิดใหม่" ที่ปรากฏในแบบฟอร์มความคิดเห็น

1
ฉันไม่สามารถทำซ้ำได้ - คุณสามารถอธิบายขั้นตอนที่จำเป็นเพื่อดูพฤติกรรมนี้ได้หรือไม่ ฉันพยายามแสดงความคิดเห็นในคำขอดึงแบบปิด (ไม่ได้ผล) แสดงความคิดเห็นในคำขอดึงแบบปิดและส่งไปยังสาขาที่กำลังดึงเข้ามา (ไม่ได้ผล) มีอะไรให้ลองอีกไหม? จำเป็นต้องรวมคำขอดึงข้อมูลจากนั้นจึงยกเลิกการผสานในภายหลังหรือไม่?
Michael Parker

ฉันไม่รู้ว่าความต้องการที่ซ่อนอยู่ที่สร้างความแตกต่างคืออะไร อาจเป็นอย่างใดอย่างหนึ่ง (ได้ส่งการเปลี่ยนแปลงใหม่สำหรับคำขอดึงเป็นสมาชิกของเจ้าของโครงการอื่น ๆ ... )
Tim Lovell-Smith

1
ตอนนี้ฉันลองทุกอย่างที่คุณพูดถึงแล้ว แต่ก็ยังไม่เห็น ฉันเป็นเจ้าของ repo การค้นหา Google สำหรับ "ส่งและเปิด GitHub ใหม่" จะทำให้เกิด Hit เพียงครั้งเดียว - หน้านี้ ข้อมูลเพิ่มเติมใด ๆ จะเป็นประโยชน์อย่างยิ่ง คำขอดึงของคุณถูกปฏิเสธในตอนแรกหรือไม่?
Michael Parker

54
ฉันสามารถจำลองสิ่งนี้ด้วยคำขอดึงที่ไม่ได้ผสาน - แต่นั่นไม่ใช่สิ่งที่เธรดนี้เกี่ยวกับ
Dan Tello

2
ใช่เขาหมายถึงการดึงแบบปิดไม่ใช่การดึงที่ผสาน
loujaybee

4

เพียงแค่ได้รับสาขาใหม่จากสาขาที่มีอยู่ซึ่งคุณได้ทำการคอมมิตพิเศษ 1 ครั้ง จากนั้นส่งคำขอดึง


3
ซึ่งจะส่งผลให้เกิดคำขอดึงใหม่โดยไม่มีประวัติสำหรับต้นฉบับ
Dave

1
นี่คือสิ่งที่ฉันทำ ใช่ประวัติเป็นเส้นตรงน้อยกว่า แต่ก็โอเคสำหรับฉัน
59

4

คุณสามารถใช้การดำเนินการเปลี่ยนกลับ:

ป้อนคำอธิบายภาพที่นี่

จะสร้างคำขอดึงอีกรายการเพื่อยกเลิกการเปลี่ยนแปลงทั้งหมดที่ทำใน PR ที่ผสาน


นี่ไม่ใช่แนวทางปฏิบัติที่ดีที่สุด :)
antonbormotov

3
@antonbormotov คุณสามารถแนะนำแนวทางที่ดีกว่านี้ได้หรือไม่?
William Weckl

สมมติว่าเราได้รวม pr กับ commits (mA และ mB) กับสาขาที่มั่นคงที่เราต้องการเปลี่ยนกลับ หลังจากรวม pr "ย้อนกลับ" ประวัติจะมีลักษณะเหมือนต้นไม้แห่งการกระทำ: XY-mA-mB-CD-rA-rB-EF เหตุใดคุณจึงต้องการเห็นการกระทำทั้งหมดนี้ในประวัติศาสตร์ซึ่งใช้การเปลี่ยนแปลง (mA, mB) แล้วจึงยกเลิก (rA, rB) จะเป็นการดีกว่าถ้าจะตั้งฐานใหม่และลบการคอมมิต mA และ mB ที่ "ไม่ดี" เหล่านั้นออกจากสาขาที่มั่นคงและรักษาประวัติให้สะอาด แน่นอนว่ามันสมเหตุสมผลถ้าการผสานเป็นเรื่องที่เพิ่งเกิดขึ้น
antonbormotov

1
ไม่เพียง แต่ประวัติศาสตร์จะดูน่าเกลียดเท่านั้นคุณยังไม่สามารถรวมการกระทำที่ถูกเปลี่ยนกลับได้อีกต่อไปเมื่อคุณพร้อม
Michael

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