我想知道如何git diff master origin/master
在 Visual Studio Code 的终端中使用命令查看文件。
我git fetch
从我的远程存储库中做了一个,现在我想查看差异,但是使用命令只是在终端中显示我。
我想要的示例:
我想知道如何git diff master origin/master
在 Visual Studio Code 的终端中使用命令查看文件。
我git fetch
从我的远程存储库中做了一个,现在我想查看差异,但是使用命令只是在终端中显示我。
我想要的示例:
在 Visual Studio Code 的左侧,有一个如下所示的 Git 图标:
通过单击此图标,然后双击“更改”下列出的文件之一,您可以看到 Git 在两侧的差异。
如果你想查看不同分支的差异变化,还有一些额外的工作。例如,您想查看Feature 分支中最后N次提交的所有更改。
通过将其添加到~/.gitconfig文件中,将 Visual Studio Code 设置为默认的 difftool 。
[diff]
tool = vscode
[difftool "vscode"]
cmd = code --wait --diff $LOCAL $REMOTE
转到您的 Git 项目。输入:
git difftool {{您要检查的分支}},例如git difftool master
如果您想在 Visual Studio Code 中打开它,系统将提示您输入每个文件。
您可以通过以下方式在 Visual Studio Code 中实现此目的
~/.gitconfig
在 Visual Studio Code 中打开文件:
code ~/.gitconfig
复制以下行~/.gitconfig
:
[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
保存更改。Ctrl通过运行+ Shift+ `在 Visual Studio Code 中打开终端。在终端中运行以下命令:
git difftool master origin/master
If you want to compare between two arbitrary references - for example comparing between branch and branch, or a commit and another commit - and still view all files in one shot easily just like we see the index changes.
切换内联视图现在可用(在 3 个点上)
code --diff file1.txt file2.txt
我相信这与git diff
功能无关。
对于 VSCode 中的快速单个文件差异视图,无需进一步集成导航和编辑体验,您可以配置和使用git difftool
其他答案所解释的 - 或更安全(和全局),如下所示:
git config --global difftool.vscode.cmd "code --wait --diff $LOCAL $REMOTE"
git config --global diff.tool vscode # optionally as default
对于 VSCode 中这种自定义差异的完全集成体验,请执行以下操作:
# possibly commit or stash a dirty work tree before switching
git switch origin/master --detach # new master in worktree
git reset master # old master as detached HEAD (diff base)
现在您可以像往常一样在 VSCode 中查看和使用此“自定义差异” - 作为工作树与 HEAD 的差异:使用 git SCM 图标,双击/右键单击文件更改,切换内联差异视图等。
现在,您甚至可以直接在差异视图中直接在该工作树上工作。要提交此类更改,请执行以下操作:
git reset origin/master # base for added changes only
# review the bare added delta again (in VSCode)
git add/commit ...
git branch/tag my_master_fixup # name it
Then merge the new master as usual, switch back to feature branch, possibly cherry-pick the my_master_fixup, rebase or whatever ..
当您浏览 Source Control 视图时,按下Space更改现在会将其作为预览编辑器打开,并将焦点保持在 Source Control 视图中,以便于键盘导航。
因此,您可以downarrow通过您的 scm 文件更改并点击Space打开差异视图。焦点仍保留在 SCM 视图中,因此您可以继续执行此操作。