1.首先,我们要被邀请到一个团队的github group,成为里面的成员,。如果你是项目的负责人,那么你需要先将你队友直接push的权限关掉,即设置成Read。这样可以防止坑爹队友误操作,未经审核就把代码push到团队项目上。
先声明,图片是我从别的地方down来的。
2.第二步,在项目的master分支上创建一个dev开发分支,如果有的话就不用创建了,,创建完成之后,会自动切换到dev分支,
3.第三步,将项目fork到自己的github上,,点击右上角的fork,然后选择账号或输入自己的账号,
4.第四步,克隆项目到本地,可以使用https或是ssh的方式克隆,推荐使用SSH协议,用HTTP协议有时会出问题。
注意,这里clone的时候是要到你自己的仓库下,
然后输入git命令行:git clone [url]
5.第五步,克隆完成之后,进入到项目目录,查看分支,,$git branch 是查看当前分支;$git branch -a 是查看所有分支;
默认当前分支为master
6.第六步,根据远程分支,我们可以创建一个新的本地分支dev,并把该项目的dev分支的内容放到本地dev分支。
$git checkout -b dev origin/dev 新建一个本地分支,把远程的dev分支放到本地的dev分支中,
完成之后,自动切换到本地的dev分支下,,用ls或dir可查看分支里的内容
PS:上面的操作完成后,你就可以在本地进行开发了。但是如果要将你修改完的代码合并到团队项目上,还需要进行下面的操作。
7.第七步,和团队保持一致,使用$git remote -v 命令来查看有没有设置upstream
如果没有显示upstream,那么就添加进去:$git remote add upstream 团队项目地址,进行添加,添加完成之后,再查看一下,这时候就有了,说明添加成功了。
8。第八步,执行$git fetch upstream获取团队项目最新版本,
此时并没有把最新版本合并到你本地的分支上,因此还需要一步。当前分支是dev分支,执行 $git merge upstream/dev 命令后,会将源分支(upstream/dev)合并到当前分支(dev)。我的显示的是already up-to-date,,
到这一步我的结果就和网上的不太一样,就是不知道,为什么会出现already up-to-date
不知道为什么会出现这种状况,希望有人能帮我解答一下
虽然到这一步,我就卡住了,但是我还是接着把后面的流程给大家写一下,下面的就是借鉴别人的图了。请见谅。
9.第九步,把本地的修改用$git push命令同步到自己的GitHub仓库上了。,如下图所示
在当前分支使用push,会push到与这个分支相关联的远程仓库分支。这里dev分支与origin/dev关联,因此push到GitHub上的dev分支。
10.第十步,请求合并到项目团队上,首先到你的GitHub上,进入你Fork的仓库里。点击红框处的Pull request
下图左边红框,表示要合并到fzu2015/CourseManagement项目的dev分支。
下图右边红框,表示要从自己仓库的dev分支发起合并请求。
点击红框处的 Create pull request就可以发送合并请求了。
在发送请求之前,你可以检查一下你都改了哪些东西。在上面那个页面往下拉,就可以看到两者的对比。如下图
以上操作结束后,团队成员的流程就结束了。最后一步交给团队项目负责人来完成。
11.第十一步,项目负责人审核并同意合并请求
首先进入GitHub的团队项目仓库中。此时右边的Pull
requests显示当前项目有几个Pull request。点击进入查看。
选择一个Pull request,
项目负责人审核有两个要注意的地方
- 一个是下图的①。一定要看清楚是合并到哪个分支。这里是从schaepher的dev分支合并到fzu2015的dev分支。
-
另一个是下图的②。点击进去后,就可以查看该Pull request对项目做了哪些修改。这样如果有问题,可以及时发现,并关闭该Pull request。
-
如果关闭了,一定要告诉队友,否则他可能会不知道。虽然也可以直接在下面发布Comment告诉他,但队友不一定看到。
-
-
如果没有问题的话,可以点击Merge pull request。这样就合并好了。