这是我的情况:我正在休假,所以有人在我的git feature分支上工作。我回来了,拉了分公司,从同事那里得到更新。
我想知道的是如何对已更新的代码进行并行比较?我可以从以前签出我的代码,但这并不能明确显示所有更改。我如何只具体查看发生了什么变化?
理想情况下,我想以比git diff HEAD@{1}
更漂亮的方式执行此操作,该操作不会在终端中突出显示语法。
答案 0 :(得分:1)
如果您具有GUI,则可以预先设置相应的舒适性差异工具,以在git difftool
上启动它们。在这里看看:https://git-scm.com/docs/git-difftool
# example of setting line for using Beyond Compare as a diff tool
config --global diff.tool bc
# then to use it just use difftool instead of diff
git difftool HEAD@{1}
答案 1 :(得分:1)
通过$ git log
或您公司的BitBucket / GitLab /任何东西查找上一次提交的简短SHA。
我们假设它是ef0acc2
。
使用Git的difftool
命令显示上一次提交和HEAD
之间的区别:
$ git difftool ef0acc2 HEAD
如果您不喜欢默认的差异工具,则可以告诉Git选择哪个:
$ git difftool --tool vimdiff ef0acc2 HEAD
其中vimdiff
可以是下列任何工具:
$ git difftool --tool-help
请注意,差异工具会顺序调用,对差异中的每个文件一次。关闭它以查看下一个文件的差异。
答案 2 :(得分:0)
跨版本比较git文件的最佳方法是使用一些不错的IDE。我使用的最受欢迎的是IntelliJ IDEA。您可以下载社区版本并在Intellij中打开本地git代码,并可以将文件与以前的版本进行比较。不要忘记拉最新的代码。
如果您想了解更多信息,请点击这里:- https://www.jetbrains.com/help/idea/comparing-file-versions.html
答案 3 :(得分:0)
在GIT bash或命令行中不能更漂亮...
尝试以下命令,git diff
git log -p -2
从您的标签看来,您似乎在使用VS Code,您可以在其中以很好的方式看到差异,请阅读this文章。
通过使用Git GUI Clients,您还可以以一种很好的可视化方式查看代码更改。
答案 4 :(得分:0)
您可以使用 Bitbucket 或 SourceTree Atlassian工具轻松而清晰地进行比较。这些工具提供GUI支持。而不是尝试使用命令。每个代码更改都可以使用特定的颜色查看。 (绿色:添加了新代码,粉色:已删除了代码)