0

我有一个 master、branch1 和 branch2。

我使用'git merge' 然后'git mergetool' 将增量(即master 和branch2 之间的变化)合并到branch1 中。

现在我想识别 branch1 下所有修改过的文件作为上述合并的结果,并将所有这些修改过的文件复制到一个单独的文件夹中以发送给某人。

这样做的正确方法是什么?

谢谢!p/s:如果这个问题太琐碎,我很抱歉,我是 GIT 的新手

4

1 回答 1

0

你可以试试 :

git diff --name-only branch1^ branch1
# or :
git diff --name-status branch1^ branch1

解释:

  1. 一般来说,git diff [commit1] [commit2]将与任何两个提交一起工作:

    git diff branch1 master
    git diff tag/v1.0 branch2
    git diff eacf32bb8 branch1
    # etc ...
    
  2. 使用--name-onlyor--name-status选项,git diff 将仅显示两次提交之间的修改文件列表(使用--name-status,它会在文件名前添加一个字母A, M or D,以表明它是Added、Modified 还是Deleted)

  3. 在处理合并提交时,它有两个父级:

    ...*--*--*--*--A---M  <- branch1
           \          /
            *--*--*--B
    

    在上面的草图中,A是 的第一个父级M,也是B它的第二个父级。
    branch1^指定A( 的第一个父级branch1),branch1^2将指定B( 的第二个父级branch1)。

于 2017-08-08T06:47:37.577 回答