Github 组队协作补充
目标:
Github 组队协作
步骤:
1.可以看到主程的代码jdstore是从quanzhanying fork过来的
2.主程邀请副程,副程在github上会收到通知
接受邀请
在副程的github上也可以看到主程的代码是从quanzhanying fork过来的
3.副程clone主程的代码下来
查到origin的地址是从主程那fetch过来的,副程重新切了一个分支出来做
副程将做好的分支push到github后,点击“Compare & pull request”
可以看到base fork quanzhanying,head fork 主程。并在框中输入做了哪些修改
点击“Create pull request”后,发现推送到了quanzhanying
这个并不是我们想要的
4.主程打开自己的github,可以看到副程提交的分支
切换到副程的分支后却发现无法merge
解法:
1.主程点击“New pull request”,会转成以下画面。把base fork点选主程的repo
2.可以看到页面跳转成如下。
①确认已经转到主程的repo;
②base选择你想要merge的分支,可以选择“master”(一般正式协作会另外创建一个develop分支,把开发的进度放到develop,master一般于production环境);
③compare选择副程的分支名;
④查看是否是“Able to merge”状态;
⑤写下你的comment。
确认以上五点后,点击“Create pull request”
3.主程点击“Merge pull request”
4.主程点击“Comfirm merge”
5.这样副程的最新代码就merge到了master分支上
那么主程如何得到最新的代码呢?
1.主程checkout回master分支,然后运行git fetch
那么主程得到的代码也就是最新的了
但是正确的做法应该是主程checkout一个develop分支。
(develop分支主要用于大家的开发使用,master用作于production环境。)
1.主程把develop分支创建好后,push到github上
2.主程再从develop分支checkout新的分支来做
3.副程pull主程的develop分支上下(假定目前develop分支已经是最新的分支),在本地再重新checkout出新的分支来做
4.副程做了新的功能重新push上去,在主程的github上可以看到新的分支
5.依据前面的方式,把副程的最新分支merge到develop分支上
6.同样的方式,把主程最新的分支也merge到develop分支上
7.每次主程merge完之后,主程和副程都要记得重新pull最新的develop分支下来。然后再checkout新分支出来做
看到最后的有惊喜,介绍一个好工具——SourceTree
可以很清楚的看出每一个commit
Updated almost 6 years ago