如何比较git pull之前和之后的代码?

时间:2018-09-03 08:44:32

标签: git github

这是我的情况:我正在休假,所以有人在我的git feature分支上工作。我回来了,拉了分公司,从同事那里得到更新。

我想知道的是如何对已更新的代码进行并行比较?我可以从以前签出我的代码,但这并不能明确显示所有更改。我如何只具体查看发生了什么变化?

理想情况下,我想以比git diff HEAD@{1}更漂亮的方式执行此操作,该操作不会在终端中突出显示语法。

5 个答案:

答案 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)

  1. 通过$ git log或您公司的BitBucket / GitLab /任何东西查找上一次提交的简短SHA。

    我们假设它是ef0acc2

  2. 使用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支持。而不是尝试使用命令。每个代码更改都可以使用特定的颜色查看。 (绿色:添加了新代码,粉色:已删除了代码)