使用 git 跟踪其他人的项目
Posted
技术标签:
【中文标题】使用 git 跟踪其他人的项目【英文标题】:Tracking other peoples projects with git 【发布时间】:2009-05-31 05:06:16 【问题描述】:假设项目 A 使用 git 作为其 SCM。我克隆了他们的 repo 并根据我的需要进行了更改,之后我仍然可以从他们的 repo 中提取更新并保留我的更改吗?
【问题讨论】:
另请参阅***.com/questions/804115/git-rebase-vs-git-merge 和***.com/questions/904353/… 了解有关变基主题的更多详细信息 【参考方案1】:在 git 中执行此操作的一个非常好的方法是“重新设置”您的更改。这样做的作用是,它不是将“他们的”回购中的更新合并到您的更改中,而是回退(撤消)您的所有更改,将它们的更改放入您的分支(所以一切都是好的和线性的),然后“重播”您的更改在他们之上。
这导致您的更改基本上始终是您所关注的存储库之上的一系列“补丁”(而不是在您返回历史记录时让您的更改与它们的更改交错)。
【讨论】:
简明扼要地记录它是如何工作的也许是个好主意?当然,这可能是重复的,但对于那些阅读过 git 文档但从未见过的人来说……将它记录在某个地方会很有用。 @darthcoder: ***.com/questions/804115/git-rebase-vs-git-merge 和 ***.com/questions/904353/… 提供了一些关于“rebase”主题的文档【参考方案2】:我倾向于为我的更改构建一个分支,并定期在上游代码之上对其进行 rebase。
【讨论】:
【参考方案3】:是的。有冲突的改动会被合并,这点基本就是好DVCS的点了。
【讨论】:
以上是关于使用 git 跟踪其他人的项目的主要内容,如果未能解决你的问题,请参考以下文章