2016-09-26 117 views
1

我的同事(让我们在这里称他为John),我开始研究一个特性。我们的工作分支如下所示git squash在保留作者信息的情况下提交

--o--o--o # this is develop branch 
    \ o--o--o # this is John's branch 
    \/  \ 
    o----o--o--o--o--o--o # this is our cowork branch 
     \    /
     o--o--o--o--o--o # this is my branch 

我们已经完成了我们的工作并准备合并我们的cowork开发分支。

此时,cowork分支中有很多提交,这是其他开发人员不希望看到的。所以我想把这些提交压缩到一个提交中。

但是在压扁(解决一些冲突)后,我发现作者信息都指向我,没有约翰的信息。

所以我在这里的问题是,有没有办法保留约翰和我的信息,同时将这些提交结合在一起?

+0

这种情况对我来说有点困惑。如果我没有弄错,那么实际上有两组合并,一个是你和约翰合并到'cowork'分支,另一个合并到cowvelop中。除了我的头顶,你可以在'develop'上重写'cowork',然后快速转发后者。 –

回答

2

说实话,git缺乏将多个开发人员信息添加到单个提交的功能。

但是,有几种方法可以避开它。当您将合并从cowork分支更改开发分支,它会创建一个合并提交,并在合并之前,你可以这样做:

git config user.name "Chris Wilson and John Smith"

请参考here更多信息的解决方法添加多个开发商信息到一次提交。