我有一个带有分支master
的git 存储库。dev
还有一个供应商分支vender
,我用来更新我的第三方库。
现在我已经进入这个项目有一段时间了,已经提交了大量的更改,并且还更新了几次第三方代码。(我从不将自己的更改添加到第三方库,只是从源代码更新它们)
我以前做的是:(可能是错误的)
(dev) $ git checkout vender
(vender) $ git merge dev
(vender) $ ... update third party libraries ...
(vender) $ git commit -am '...'
(vender) $ git checkout dev
(dev) $ git merge vender
这样,我首先将整个合并dev
到vender
,然后在更新后vender
,将其合并回dev
. 这样做是将所有历史记录带入vender
与更新第三方库无关的分支中。我想让我的vender
分支中的日志仅包含有关更新第三方库的提交。
我认为我在合并时是错误的dev
(vender
我认为所有代码都必须在每个分支中——因为我是一个 git noob)。
我的第一个问题是:
是否可以不合并dev
并vender
继续更新它(我想这样做会显示vender
仅包含第三方更新提交的日志)
现在,在这一点上,我有一个非常脏的vender
分支——它包含我所做的所有提交,dev
与第三方代码无关。我现在应该怎么做才能让vender
分支正确显示第三方更新相关的提交?