W programie Visual Studio Code Jak scalić między dwoma oddziałami lokalnymi?

100

Wygląda na to, że w Visual Studio Code mogę tylko wypychać, ściągać i synchronizować. Istnieje udokumentowane wsparcie dla konfliktów scalania, ale nie mogę dowiedzieć się, jak właściwie połączyć dwie gałęzie. Wiersz poleceń Git w VSC (naciśnij F1) ułatwia tylko podzbiór poleceń:

Opcje eGit dostępne w VSCode

Próba wyciągnięcia z alternatywnej gałęzi lub wypchnięcia do alternatywnej gałęzi daje:

Ograniczanie przepustowości polecenia git

Oto dokumentacja dotycząca dokumentacji Git Git Visual Studio Code firmy VSCode

Co ja przeoczam?

TheFastCat
źródło
Czy na pewno sprawdziłeś wszędzie, czytaj ten blog, który omawia, jak połączyć dwie gałęzie?
Tim Biegeleisen
5
To Visual Studio, a nie Visual Studio Code, który jest całkowicie oddzielną aplikacją. Więcej informacji: VisualStudio.com i code.visualstudio.com
TheFastCat

Odpowiedzi:

48

Aktualizacja czerwiec 2017 (z VSCode 1.14 )

Możliwość łączenia oddziałów lokalnych została dodana poprzez PR 25731 i zatwierdzenie 89cd05f : dostępne za pomocą Git: merge branchpolecenia " ".
A PR 27405 dodał obsługę poprawnej obsługi scalania w stylu diff3.

Vahid „s odpowiedź wzmianka 1.17, ale że uwolnienie września faktycznie nic w sprawie scalenia dodał.
Dopiero od 1.18 października dodano znaczniki konfliktów Git

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

Od 1.18, dzięki kombinacji komendy merge (1.14) i markerów scalania (1.18), naprawdę możesz wykonywać lokalne połączenia między gałęziami.


Oryginalna odpowiedź 2016:

Dokument kontroli wersji nie wspomina o poleceniach scalania, a jedynie o stanie scalania i obsłudze konfliktów.

Nawet najnowsze wydanie z czerwca 1.3 nie wnosi nic nowego na front VCS.

Jest to obsługiwane przez problem 5770, który potwierdza, że ​​nie możesz używać VS Code jako gita mergetool, ponieważ:

Czy przypadkiem ta funkcja zostanie uwzględniona w następnej iteracji?

Prawdopodobnie nie, to duże przedsięwzięcie, ponieważ konieczne jest zaimplementowanie interfejsu użytkownika do scalania .

To pozostawia faktyczne scalanie do zainicjowania tylko z wiersza poleceń.

VonC
źródło
23
Cóż, to jest do bani!
Caltor
Dobra sugestia, ale dla mnie jest to wiersz poleceń lub Git Gui / Extensions, ale fajnie byłoby mieć to wbudowane w Visual Studio Code, tak jak w zwykłym Visual Studio.
Caltor
2
Łączenie gałęzi to dla mnie codzienne zadanie. Potrzebujemy wsparcia dla scalania w VSCode.
Jonathan Ramos,
@JonathanRamos, są narzędzia do wszystkiego, VSCode koncentruje się na twoich potrzebach związanych z kodowaniem, musisz poszukać narzędzia specyficznego dla Git, jeśli jesteś zaawansowanym użytkownikiem. Jest możliwe, że MS wprowadzi tę funkcję w przyszłości, ale obecnie istnieją inne alternatywy.
Helmut Granda
Przydałaby się taka funkcja, jak ta w społeczności Visual Studio
Sebastián Rojas,
151

Możesz to zrobić bez używania wtyczek.

W najnowszej wersji vscode, której używam (1.17.0), możesz po prostu otworzyć gałąź, którą chcesz (z lewego dolnego menu), a następnie nacisnąć ctrl+shift+pi wpisać, Git: Merge brancha następnie wybrać inną gałąź, z której chcesz scalić (do obecny)

Vahid
źródło
1
Czy po wybraniu Git: Merge branch branch zostanie zatwierdzony automatycznie?
Jyoti Prasad Pal
@JyotiPrasadPal tak, po prostu musiszgit: push/sync
Vahid
8

Znalazłem to rozszerzenie dla kodu VS o nazwie Git Merger . Dodaje Git: Merge fromdo poleceń.

Jay Culpepper
źródło