显示哪些文件在两个修订之间发生了变化

我想合并已分离一段时间的两个分支,并想知道哪些文件已被修改。

遇到这个链接:http://linux.yyz.us/git-howto.html这是非常有用的。

比较我遇到的分支的工具是:

  • git diff master..branch
  • git log master..branch
  • git shortlog master..branch
  • 想知道是否有像“git status master..branch”这样的东西只能看到两个分支之间不同的文件。

    如果不创建新工具,我认为这是您现在可以做到的最接近的工具(当然,如果文件被修改了多次,这将显示重复):

  • git diff master..branch | grep "^diff"
  • 想知道是否有我错过的东西...


    比较当前分支与master分支

    $ git diff --name-status master
    

    比较任何一对分支

    $ git diff --name-status firstbranch..yourBranchName
    

    如果我能正确理解你,那就应该做你需要的。


    尝试

    $ git diff --stat --color master..branchName
    

    这将为您提供有关每次更改的更多信息,同时仍使用相同数量的行。

    如果您想以另一种方式合并,您还可以翻转分支以获得更清晰的差异图像:

    $ git diff --stat --color branchName..master
    

    另外请记住,git有便宜和容易的分支。 如果我认为合并可能有问题,我为合并创建一个分支。 因此,如果master有我想要合并的变化,并且ba是需要来自主人的代码的分支,我可能会执行以下操作:

    git checkout ba
    git checkout -b ba-merge
    git merge master
    .... review new code and fix conflicts....
    git commit
    git checkout ba
    git merge ba-merge
    git branch -d ba-merge
    git merge master
    

    最终的结果是,我必须在我的分支搞砸之前尝试合并丢弃分支。 如果我自己纠结,我可以删除ba-merge分支并重新开始。

    链接地址: http://www.djcxy.com/p/4433.html

    上一篇: Showing which files have changed between two revisions

    下一篇: How can I get full content of a git repository with all branches?