2.4.1 工作方式
和其它的Git
工作流一样,Forking
工作流要先有一个公开的正式仓库存储在服务器上。 但一个新的开发者想要在项目上工作时,不是直接从正式仓库克隆,而是fork
正式项目在服务器上创建一个拷贝。
这个仓库拷贝作为他个人公开仓库 —— 其它开发者不允许push
到这个仓库,但可以pull
到修改(后面我们很快就会看这点很重要)。 在创建了自己服务端拷贝之后,和之前的工作流一样,开发者执行git clone
命令克隆仓库到本地机器上,作为私有的开发环境。
要提交本地修改时,push
提交到自己公开仓库中 —— 而不是正式仓库中。 然后,给正式仓库发起一个pull request
,让项目维护者知道有更新已经准备好可以集成了。 对于贡献的代码,pull request
也可以很方便地作为一个讨论的地方。
为了集成功能到正式代码库,维护者pull
贡献者的变更到自己的本地仓库中,检查变更以确保不会让项目出错,合并变更到自己本地的master
分支, 然后push
master
分支到服务器的正式仓库中。 到此,贡献的提交成为了项目的一部分,其它的开发者应该执行pull
操作与正式仓库同步自己本地仓库。