1、从公共远程fork一份自己的本地远程之后,从本地远程 clone 到本地
2、将本地代码跟公共远程代码做关联配置 git remote add upstream https://github.com/volojs/create-template.git
3、此时查看本地代码所配置的远程有哪些 git remote -v origin https://github.com/suqiuhui/create-template (fetch) origin https://github.com/suqiuhui/create-template (push) upstream https://github.com/volojs/create-template.git (fetch) upstream https://github.com/volojs/create-template.git (push)
4、创建一个新的分支 dev (注意:并不是在当前的分支上新拉一个分支,而是创建一个新的空白分支) git branch dev
5、切到新建的分支上 git checkout dev
6、查看一下当前的本地分支与远程分支的关联关系 git branch -vv dev 9004b7b requirejs 2.3.3 master 9004b7b [origin/master] requirejs 2.3.3
7、将本地新建分支push到自己的本地远程origin上,因为只是在本地创建了一个新的分支,远程 origin 上还并没有该分支呢 git push origin dev Total 0 (delta 0), reused 0 (delta 0) To https://github.com/suqiuhui/create-template * [new branch] dev -> dev
注:但此操作只相当于在远程origin上新建了一个dev分支,并没有将本地dev分支与origin上的dev分支做任何关联处理操作,即两者还是相对独立的状态,可通过 步骤6 查看
8、把本地dev分支与远程origin的dev分支进行关联处理(通过 --set-upstream 命令) git branch --set-upstream dev origin/dev --set-upstream 该命令已废弃,改作--set-upstream-to了,使用如下,在dev分支下运行 git branch --set-upstream-to=origin/dev 或者 git branch -u origin/dev
9、此时再次通过 步骤6 查看分支的关联关系,可见本地dev分支已于origin的dev分支建立上了关联关系 git branch --vv * dev 9004b7b [origin/dev] requirejs 2.3.3 master 9004b7b [origin/master] requirejs 2.3.3
10、接下来可从upstream远程某个分支上往本地新建分支上pull代码, 再从本地dev分支提到本地远程origin的dev分支上, 再通过从 origin 的 dev 分支上 new pull(merge) request 到 upstream 的 master 分支上(如下图),并等待有upstream 代码合并权限的人员通过即可 git pull upstream master git push origin dev
至此,通过代码管理工具git,就完成了一次完整地代码管理操作过程,此后单dev分支上开发只需重复操作 步骤10 即可, 如果遇到需要紧急处理的bug,可通过上边 步骤1-10 完整操作另建bug修复分支,待bug修复完成再将此bug修复分支删除即可
转载于:https://www.cnblogs.com/s-qiu/p/6721941.html
相关资源:代码管理工具Git