我的情况是:我在度假,所以有人在我的Git功能分支上工作。我回来拉了分公司从我的同事那里得到最新消息。
我想知道的是,如何对已更新的代码进行并行比较?我可以从以前签出我的代码,但这并没有显式地显示所有的更改。我如何才能看到具体发生了什么变化?
理想情况下,我想用比 git diff HEAD@{1} 在我的终端中没有任何语法高亮显示。
git diff HEAD@{1}
使用 比特桶 或 源树 亚特兰蒂斯的工具。这些工具提供了GUI支持。而不是尝试命令。可以用特定颜色查看每个代码更改。(绿色:添加新代码,粉色:删除的代码)
在git-bash或命令行中是不能再漂亮了…
试试下面的命令,两者有点不同 git diff
git diff
git log -p -2
从你的标签上看,你似乎在使用vs代码,你可以很好地看到其中的差异。 this 文章。
您还可以通过使用以良好的可视化方式看到代码更改。 Git GUI Clients .
跨版本比较Git文件的最好方法是使用一些好的IDE。我使用的最流行的是Intellij思想。您可以下载社区版本并在Intellij中打开本地Git代码,还可以将文件与以前的版本进行比较。不要忘记提取最新的代码。
下面是链接,如果您想了解更多信息: https://www.jetbrains.com/help/idea/comparing-file-versions.html
找到你最后一次承诺的短sha通过 $ git log 或者你公司的BitBucket/Gitlab/Whatever。
$ git log
假设它是 ef0acc2 .
ef0acc2
使用Git difftool 显示上一次提交和 HEAD :
difftool
HEAD
$ git difftool ef0acc2 HEAD
如果您不喜欢默认的diff工具,您可以告诉git使用哪个工具进行选择:
$ git difftool --tool vimdiff ef0acc2 HEAD
在哪里? vimdiff 可以是以下列出的任何工具:
vimdiff
$ git difftool --tool-help
请注意,diff工具是按顺序调用的,对diff中的每个文件都调用一次。关闭它以查看下一个文件的diff。
如果你有一个图形用户界面,你可以设置更舒适的不同工具来启动 git difftool 如果您事先相应地配置它们。请看这里: https://git-scm.com/docs/git-difftool
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}