hjhnju / yucheng

2 stars 0 forks source link

Github如何提交codereview? #6

Open hjhnju opened 9 years ago

hjhnju commented 9 years ago

实践中发现codereview还是非常有必要的,可以传递和沟通包括但不限于

  1. 代码设计模式、通用解决思路
  2. 一些基础类库使用建议
  3. 代码编码规范 传承经验,交流学习才能让参与者更快提高。

可以找到两种方案:https://help.github.com/articles/using-pull-requests/

  1. fork & pull
  2. shared repos 第二种对我们好像更方便,但不知道具体如何操作
hjhnju commented 9 years ago

方案1: 管理员添加用户为collaborator(才能看到private repos),用户fork代码后修改commit并push自己fork的远程仓库,完成后再发起pull request。管理员可以review代码评论,可以merge(无冲突发起人也可以merge,因为他也是collaborator)

hjhnju commented 9 years ago

方案2: 管理员添加用户为collaborator(才能看到private repos),用户直接clone代码后创建自己的开发分支(如git checkout -b account-dev),完成后push origin account-dev account-dev。最后回到github主页发起pull request。管理员可以review代码评论,可以merge(无冲突发起人也可以merge,因为他也是collaborator)。

merge完成后,提示你 Pull request successfully merged and closed You're all set—the account-dev branch can be safely deleted. 可以删除这个分支了!

whu404 commented 9 years ago

Code Review详细流程如下: 1、根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api。 git checkout -b feature/api

2、运行git branch 确认切换到了feature/api分支

3、编辑代码完成开发任务, commit相关代码 git add -A git commit -m "implement api architecture"

4、将分支代码push到服务器 git push origin -u feature/api

5、登录到yucheng 的源代码库,如https://github.com/hjhnju/yucheng ,点击Pull request按钮去创建一个pull request

6、再pull request详细页面, 填写相关标题/说明/reviewer, 目前请将reviewer设成whu404和hjhfdu

7、请提醒reviewer去审核pull request,系统也会发通知提醒reviewer

8、Reviewer打开pull request页面,查看代码修改情况,也可以在相应的代码处添加注视,提示代码作者哪里应该修正。

9、代码作者根据reviewer的要求,调整代码后commit/push到服务器。 然后reviewer继续设置, 如此循环,直到没有问题。

10、当代码没有问题以后, 需要将任务代码merge到主代码库, 有两种方法: a、Reviewer可以在pull request页面点击Merge按钮, 把代码merge到主代码库 b、代码作者自己merge到主代码库, 并push到服务器。 git pull origin git log ..master

如果看到master里有修改没在当前分支, 那么运行git rebase master来把master的修改加入到当前分支 运行一下合并命令 git checkout master git merge --no-ff feature/api git push

11、代码作者删除feature子分支。 git checkout master git branch -D feature/api git push origin :feature/api

git pull origin master #从主分支pull到子分支

更详细步骤详见:http://www.cnblogs.com/linjiqin/p/3772681.html http://segmentfault.com/blog/livoras/1190000002413519