Есть ли способ увидеть git diff от origin/master с помощью кода Visual Studio?

Используя Visual Studio Code (версия 1.11.2), я могу очень легко увидеть параллельные графические различия моих текущих изменений, нажав кнопку Управление исходным кодом на левой панели. Но как только я передам эти изменения в свой локальный репозиторий, я не смогу найти способ увидеть одинаковые параллельные отличия от источника/мастера.

Другими словами, есть ли способ для инструмента сравнения порождений кода Visual Studio (версия 1.11.2), чтобы показать мне, что я вижу, когда я делаю git diff origin/master, но также и в параллельном графическом diff?


person Usman    schedule 16.05.2017    source источник
comment
вы можете сделать это в диалоговом окне истории git.   -  person phil294    schedule 04.12.2017
comment
Не уверен, почему эта простая функция отсутствует в VSCode по сравнению с IntelliJ IDEA.   -  person vikramvi    schedule 06.08.2019


Ответы (6)


Для этого можно использовать расширение.

Два хороших варианта:

Gitlens: https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens

С этим вы можете использовать действие >GitLens: Open Changes with... для сравнения с любой ветвью (локальной или удаленной).

Вы также можете использовать Историю Git: https://marketplace.visualstudio.com/items?itemName=donjayamanne.githistory

Посмотреть всю историю файлов и сравнить с текущей версией можно с помощью действия >Git: View File History.

person Luís Henrique Faria    schedule 23.06.2017
comment
Опция контекстного меню Gitlens Compare Line Revision With Previous — гениальна! - person Matt Davis; 17.02.2018
comment
Обратите внимание, что это изменилось с версии gitlens 9.0.0 github.com/ eamodio/vscode-gitlens/releases/tag/v9.0.0 - person fkupper; 21.12.2018
comment
В новой версии используйте опцию Открыть изменения с ревизией... в меню вкладки. - person Louis Yang; 04.12.2019
comment
Хм, GitLens открывает diff только для чтения. Есть ли способ синхронизировать отдельные изменения в HEAD? - person bluenote10; 02.04.2020

Из Использование контроля версий в Visual Studio Код:

Добавьте это в файл конфигурации Git, например ~/.gitconfig:

[diff]
    tool = vscode
[difftool "vscode"]
    cmd = code --wait --diff $LOCAL $REMOTE

При использовании git difftool HEAD HEAD^ Git спросит, следует ли использовать Visual Studio Code.

person bilabila    schedule 30.11.2017
comment
Спасибо! Вы знаете, есть ли поддержка слияния? - person jurl; 01.05.2018
comment
Это то, что я ищу, но это изменение ничего не дало мне в версии 2.18.0. - person HackSlash; 28.06.2018
comment
@HackSlash Я тоже на git 2.18.0, может быть, вы можете увидеть исходный документ Использование контроля версий в VS Code - person bilabila; 30.06.2018
comment
Эта команда делает vscode моим редактором по умолчанию. Это классно. Спасибо. git config --global core.editor "code --wait" - person HackSlash; 02.07.2018

Я также использую расширение GitLens. Перейдите на вкладку Source Control, щелкните правой кнопкой мыши файл, который вы хотите сравнить с origin/master (или другой) веткой. В меню выберите Open Changes with... и выберите ветку.

Сравнить изменения локального файла с основным

person mimo    schedule 26.02.2020

Принятый ответ хорош, если вы хотите сравнить один файл из HEAD с какой-либо фиксацией. С другой стороны, если вам нужно сравнить все ваши файлы с другой веткой, Git Lens также предоставляет решение для этого: перейдите на вкладку управления исходным кодом сбоку (1) > щелкните BRANCHES (2) > щелкните правой кнопкой мыши нужную ветку (как разработчик - 3)

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

Теперь откроется меню, выберите compare with HEAD

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

  • Вы также можете сделать то же самое с коммитами, если на этапе (2) вместо этого вы выберете COMMITS.
  • Вы также можете использовать cmnd+shift_p или ctrl+shift+p и ввести GitLens: Compare HEAD with, а затем выбрать конкретную желаемую фиксацию/ветку.
person barshopen    schedule 23.05.2021

Из блога MSDN

Просмотр различий

Наш инструментарий Git поддерживает просмотр различий в VS Code. Щелкните файл в представлении Git, чтобы отобразить его рядом. Это позволяет сравнить ваш текущий файл с предыдущей его версией:

person Rahul    schedule 24.02.2018

Он не использует код Visual Studio, но если вы просто хотите увидеть краткий обзор изменений... просто запустите PR из ветки на GitHub.

person Johnny5    schedule 29.11.2017
comment
Это не работает, если вы хотите увидеть разницу между поэтапными/незафиксированными изменениями и т. Д., Также вам нужно нажать каждую фиксацию, чтобы увидеть разницу - person Steel Brain; 29.03.2018