1,程序员A在本地及自己的远端创建并维护自己的版本及分支,程序员B在本地及自己的远端(注意,不是程序员A的远端)创建并维护自己的版本及分支。
2,当程序员A在本地有更新时直接推送更新到自己的远端。程序员B的更新也推送到B自己的远端。
3,当程序员B想合并A的最新版本时,pull或fetch程序员A的远端到自己的本地,形成一个分支,或直接放在另外一个目录下。
4,程序员B在本地merge刚刚得到的程序员A的代码。
5,程序员B将合并后的最新代码推送到自己的远端。
说明:
1,程序员A和B是完全平等的。
2,可以任意指定A或B的远端为对外发布版本,假定指定A对外发布,那么必要的一步是,B在更新自己的远端之后需要发一个pull request给A,以便让A即时合并B的更新。