Как сравнить разные ветки в Visual Studio Code


Ответы:


203

2019 ответ

Вот пошаговое руководство:

  1. Установите GitLens расширение: GitLens
  2. GitLens значок будет отображаться в навигационной панели. Нажмите здесь.

    Значок объектива Git

  3. Нажмите на сравнение

    Введите описание изображения здесь

  4. Выберите ветки для сравнения

    введите описание изображения здесь

  5. Теперь вы видите разницу. Вы можете выбрать любой файл, для которого хотите увидеть разницу.

    Введите описание изображения здесь


51
ваши
лучшие

1
Действительно проницательно :-)
Химаншу Шарма

1
Ваши пошаговые скриншоты очень полезны. Большое спасибо.
Анил Таллам

Это должно быть одно из лучших расширений для VSCode. Приятные особенности! Я даже могу редактировать соответствующие файлы, когда доберусь до этого места в режиме разделения.
klewis

Обратите внимание, что он сравнивает только удаленную версию, локальные изменения не влияют на сравнение мгновенно
cagcak

67

Я бы рекомендовал использовать: Git Lens .


31
Чтобы добавить некоторые подробности об использовании, я нашел способ сравнения веток в Git Lens: Откройте представление проводника (Ctrl + Shift + E), найдите группу Git Lens, щелкните правой кнопкой мыши ветку, которую хотите сравнить, и выберите «Выбрать для сравнения», затем щелкните правой кнопкой мыши вторую ветвь и выберите «Сравнить с выбранным». Результаты будут отображаться в виде отдельной группы под названием GitlensResults под Git Lens. Там вы можете посмотреть коммиты и напрямую сравнить файлы.
Vidar

1
Я узнал о GitLens в прошлом году (2017) и сразу был впечатлен. В представлении GitLens внизу вы выбираете ветку, которую хотите сравнить, а затем находите ветку, с которой вы хотите сравнить ее, как указано выше «Сравнить с выбранным» - а затем вы можете выбрать отдельные файлы, которые отображаются как измененные / добавлено между двумя. Это расширение является первым, которое я устанавливаю при новой установке VSCode. Я на это полагаюсь.
Марк У. Митчелл

Я хотел бы сравнить текущее рабочее дерево с определенной веткой и напрямую редактировать файлы. GitLens позволяет мне сохранить как ... настоящий файл, но сначала мне нужно его найти. Есть способ более удобный? В IntelliJ IDEA я просто
Радим Ванса

1
GitLens настолько прост в использовании, что он очень полезен. Спасибо, что поделился.
RF

1
Лучший ответ Я изо всех сил пытался заставить Git History Diff работать, и это НАСТОЛЬКО ЛЕГКО в использовании. Не могу порекомендовать достаточно, спасибо за информацию!
Lostaunaum


12

Используйте плагин Git History Diff для удобного сравнения ветвей бок о бок:

https://marketplace.visualstudio.com/items?itemName=huizhou.githd

Перейдите по ссылке выше и прокрутите вниз до анимированного изображения в формате GIF под названием Diff Branch . Вы увидите, что можете легко выбрать любую ветку и провести параллельное сравнение с веткой, в которой вы находитесь! Это похоже на предварительный просмотр того, что вы увидите в запросе на извлечение GitHub. Для других вещей Git я предпочитаю встроенные функции Visual Studio Code или Git Lens, как упоминали другие.

Однако вышеупомянутый плагин отлично подходит для выполнения различий ветвей (т. Е. Для тех, кто выполняет перебазирование потока Git и нуждается в предварительном просмотре перед принудительным подталкиванием к GitHub PR).


5

Теперь это возможно с помощью расширения githistory .

Вот небольшая хитрость: вы можете сравнить последние коммиты из каждой ветки, и это будет то же самое, что сравнить две ветки рядом или создать PR.

Вот как это сделать с помощью расширения githistory:

  1. Открыть githistory
  2. Выберите последнюю фиксацию из вашей текущей ветки, щелкнув «Значок фиксации Git» → (обычно это должна быть последняя фиксация в списке). В открывшемся выпадающем меню нажмите «Выбрать эту фиксацию».
  3. Выберите последнюю фиксацию из ветки, с которой вы хотите сравнить, нажав «Значок фиксации Git».
  4. В результате должно появиться раскрывающееся меню с несколькими вариантами → Выберите последний вариант с надписью «Сравнить с SHA», и вы увидите разницу.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.