ใน Visual Studio Code ฉันจะผสานระหว่างสองสาขาภายในได้อย่างไร


101

ใน Visual Studio Code ดูเหมือนว่าฉันได้รับอนุญาตให้ผลักดึงและซิงค์เท่านั้น มีเอกสารรองรับสำหรับความขัดแย้งในการผสาน แต่ฉันไม่สามารถหาวิธีผสานระหว่างสองสาขาได้ บรรทัดคำสั่ง Git ภายใน VSC (กด F1) จะทำให้ชุดคำสั่งย่อยเท่านั้น:

ตัวเลือก eGit ที่มีอยู่ใน VSCode

การพยายามดึงจากสาขาอื่นหรือผลักดันไปยังสาขาอื่นจะให้ผลตอบแทน:

การควบคุมปริมาณคำสั่ง git

นี่คือเอกสารเกี่ยวกับ Git Visual Studio Code Git Documentationของ VSCode

ฉันมองข้ามอะไรไป?


แน่ใจหรือว่าคุณได้ตรวจสอบทุกที่แล้ว qv บล็อกนี้ที่กล่าวถึงวิธีการรวมสองสาขา?
Tim Biegeleisen

5
นั่นคือ Visual Studio ไม่ใช่ Visual Studio Code ซึ่งเป็นแอปพลิเคชันแยกต่างหากโดยสิ้นเชิง ข้อมูลเพิ่มเติม: VisualStudio.com และcode.visualstudio.com
TheFastCat

คำตอบ:


47

อัปเดตเดือนมิถุนายน 2017 (จากVSCode 1.14 )

เพิ่มความสามารถในการผสานสาขาภายในผ่านPR 25731และคอมมิต 89cd05f : เข้าถึงได้ผ่านGit: merge branchคำสั่ง ""
และPR 27405 ได้เพิ่มการจัดการการผสานสไตล์ diff3 อย่างถูกต้อง

คำตอบของVahidกล่าวถึง 1.17 แต่การเปิดตัวในเดือนกันยายนนั้นไม่ได้เพิ่มอะไรเกี่ยวกับการผสาน
เฉพาะวันที่ 1.18 ตุลาคมเท่านั้นที่เพิ่มเครื่องหมายความขัดแย้งของ Git

https://code.visualstudio.com/assets/updates/1_18/merge.png

จาก 1.18 ด้วยการรวมกันของคำสั่ง merge (1.14) และ merge markers (1.18) คุณสามารถทำการผสานโลคัลระหว่างสาขาได้อย่างแท้จริง


คำตอบเดิม 2016:

ควบคุมเวอร์ชัน docไม่ได้พูดถึงคำสั่งผสานผสานสถานะเท่านั้นและสนับสนุนความขัดแย้ง

แม้แต่การเปิดตัว 1.3 มิถุนายนล่าสุดก็ไม่ได้นำสิ่งใหม่มาสู่หน้า VCS

สิ่งนี้ได้รับการสนับสนุนโดยปัญหา 5770ซึ่งยืนยันว่าคุณไม่สามารถใช้ VS Code เป็นคอมไพล์mergetoolได้เนื่องจาก:

คุณลักษณะนี้จะรวมอยู่ในการทำซ้ำครั้งต่อไปโดยบังเอิญหรือไม่

อาจจะไม่ได้นี้เป็นความพยายามที่ยิ่งใหญ่ตั้งแต่ผสาน UI ที่จะต้องดำเนินการ

ซึ่งจะทำให้การผสานจริงเริ่มต้นจากบรรทัดคำสั่งเท่านั้น


25
นั่นมันห่วย!
Caltor

ข้อเสนอแนะที่ดี แต่เป็นบรรทัดคำสั่งหรือ Git Gui / Extensions สำหรับฉัน แต่มันจะดีที่จะสร้างสิ่งนี้ไว้ใน Visual Studio Code เหมือนใน Visual Studio ปกติ
Caltor

2
การรวมสาขาเป็นงานประจำวันสำหรับฉัน เราต้องการการสนับสนุนสำหรับการรวมใน VSCode
Jonathan Ramos

@JonathanRamos มีเครื่องมือสำหรับทุกอย่าง VSCode มุ่งเน้นไปที่ความต้องการของคุณในการเขียนโค้ดคุณต้องมองหาเครื่องมือเฉพาะ Git หากคุณเป็นผู้ใช้ระดับสูง เป็นไปได้ว่า MS จะเปิดตัวคุณลักษณะนี้ในอนาคต แต่ในขณะนี้มีทางเลือกอื่น
Helmut Granda

น่าจะเป็นฟีเจอร์ที่ดีเหมือนใน Visual Studio Community
Sebastián Rojas

153

คุณสามารถทำได้โดยไม่ต้องใช้ปลั๊กอิน

ในเวอร์ชันล่าสุดของ vscode ที่ฉันใช้ (1.17.0) คุณสามารถเปิดสาขาที่คุณต้องการได้ (จากเมนูด้านล่างซ้าย) จากนั้นกดctrl+shift+pและพิมพ์Git: Merge branchจากนั้นเลือกสาขาอื่นที่คุณต้องการรวมจาก (ถึง คนปัจจุบัน)


1
หลังจากที่ฉันเลือก Git: Merge branch branch มันจะคอมมิตโดยอัตโนมัติหรือไม่
Jyoti Prasad Pal

@JyotiPrasadPal ใช่คุณแค่ต้องการgit: push/sync
Vahid


8

ผมพบว่าส่วนขยายนี้รหัส VS เรียกว่าGit การควบรวมกิจการ มันเพิ่มGit: Merge fromคำสั่ง


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