有没有办法使用 Visual Studio 代码查看 git 与 origin/master 的区别?

Is there a way to see git diff from origin/master using Visual Studio Code?

使用 Visual Studio 代码(版本 1.11.2),通过单击 源代码管理 [=19=,我可以很容易地看到当前更改的并排图形差异] 按钮在左侧面板中。但是一旦我将这些更改提交到我的本地存储库,我就无法找到一种方法来查看 origin/master.

中相同的并排差异

也就是说,Visual Studio代码(1.11.2版本)的spawn比较工具有没有办法让我看到我做git diff origin/master时看到的东西,但是在旁边-并排图形差异?

您可以为此使用扩展程序。

两个不错的选择:

Git镜头: 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 操作查看整个文件历史记录并与当前版本进行比较。

它不使用 Visual Studio 代码,但如果您只是想快速查看更改摘要...只需从 GitHub 上的分支发起 PR。

来自Using Version Control in Visual Studio Code:

将此添加到 Git 配置文件,如 ~/.gitconfig:

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

使用git difftool HEAD HEAD^时,Git会询问是否使用Visual Studio代码.

来自MSDN blog

查看差异

Our Git tooling supports viewing of Diffs within VS Code. Click the file in the Git view to display a side-by-side view. This allows you to compare your current file with a previous version of it:

我也用GitLens extension。转到 Source Control 选项卡,右键单击要与 origin/master(或其他)分支比较的文件。从菜单中选择 Open Changes with... 并选择一个分支。

如果您想将 HEAD 中的单个文件与某个提交进行比较,则接受的答案很好。 另一方面,如果您需要将所有文件与另一个分支进行 diff,Git Lens 也提供了解决方案: 转到侧面的源代码管理选项卡(1) > 单击 BRANCHES(2) > 右键单击​​所需的分支(如 dev - 3)

现在,将打开一个菜单,选择compare with HEAD

  • 您也可以对提交执行相同的操作,如果在阶段 (2) 中您将选择 COMMITS
  • 您也可以使用 cmnd+shift_pctrl+shift+p 并输入 GitLens: Compare HEAD with,然后选择特定的 commit/branch。