我有a project使得在Android中使用Dagger更容易使用DI。它旨在引导(或改进)新项目,而不是用作库。因此,我鼓励用户重构项目的某些部分(包,类名等),并且我计划提供一个脚本来为它们做这些。
我的问题是,一旦项目使用此项目进行了自举,并对原始代码进行了更改,它们如何整合上游变更?我想他们可以在初始提交时创建一个分支,引入新的更改,然后重新绑定到它,但是有更简单的解决方案吗?
答案 0 :(得分:1)
首先,他们需要保留对上游回购的引用,类似于triangular workflow,,除非您不会通过Pull Request回馈给“上游”(此处“模板“)回购:
这样,您可以git fetch upstream
,并将upstream/master
与您自己的主人,甚至upstream/master
和之前的upstream/master
州(提取前)进行比较,按顺序排列检测您应该加入当前代码库的任何更改。
不建议重新引用,因为它会更改正在重新分支的分支的SHA1,并会强制用户git push --force
他/她的分支到origin
个回购。
从upstream/master
到正在开发的本地分支的合并甚至樱桃选择都不那么具有侵入性,并允许随后进行定期推送。