当你不能推或拉时Git工作流程

这对我来说是一个
recurring问题,但我想重申一下.

快速解释我的情况:我所处的环境中没有git服务器,也没有共享分区或编码器中的任何共同点.没有,不会有,不能拥有.期.

我正在尝试提出一个工作流程解决方案,即使在我们管理的环境中,我们的代表也能保持合理的同步.

我正在尝试的解决方案使用一个讨论组来分发补丁,两个主要分支和一个看似简短的工作流程,如下:

>分支机构是你和你的分支
> master是同步分支,它将使您及时了解并跟踪其他deves仍然没有您的代码.
>你的将成为你的新主人,也就是你的最终代码所在.你不在大师工作.
>每个人都将补丁发送到讨论列表.
>我在考虑很少有两个人会在同一个文件中工作.

工作流程中有两个主要操作:

生成补丁:

>到你的
>从master生成补丁(git format-patch master)
>去掌握
>将你合并为主人
>>转到你的,继续与你的工作

应用补丁:

>转到主分公司
>应用收到的补丁
>去你的分店
>将大师合并到你的手中
>>继续与你合作

如果我做对了,这应该让主分支合理地与其他人保持同步.

并不是说你的分支只是为了帮助跟踪其他人有没有.

如果有太多麻烦,我试图想出一些问题:

>应用补丁顺序?
>当有人错过补丁时如何避免和检测?
>当有人错过补丁时可能会有多少问题?
>这可以产生的其他问题我甚至都没想过?

谢谢!

最佳答案 我宁愿有两个回购,而不是一个有两个分支的回购:

>一个只有主分支
>一个(从第一个克隆)与主人和你的

那样我可以:

>在’你’的回购中将我需要的东西从你的分支合并到主人
>从您的repo的主分支获取更改到主repo的主分支
>从主仓库制作incremental bundle(产生一个文件,更容易沟通)
>邮寄一个文件,以及主仓库的SHA1

在接收端,我会:

>从捆绑中拉入主仓库
>检查它的SHA1(这样,我相信我没有错过任何东西)
>将主分支从主仓库拉入’你’回购的主分支
>将我需要的东西从主分支合并到你的分支.

拥有两个独立仓库的想法是让一个带有SHA1的仓库可以在接收端检查:它在两个站点中必须完全相同.

点赞