# 先 fork 项目到本身 github # 1. 从本身仓库克隆到本地(clone 的是项目指定的默认分支,好比 master) git clone git@github.com:me/em.git # 2.1 查看本地分支 git branch >>> * master # 2.2 发现不是本身要开发的 (好比 dev) 分支,先查看本地和远程全部分支 git branch -a >>> * master >>> remotes/origin/HEAD -> origin/master >>> remotes/origin/dev >>> remotes/origin/master # 2.2 建立一个dev分支(-b),并把远程dev分支(origin/dev)的内容放在该分支内。接着切换到该分支(checkout) git checkout -b dev origin/dev # 若是想切回 master 分支 git checkout master # 3. 和团队项目保持同步 # 3.1 查看有没有设置upstream(看返回里有没有 upstream) # upstream(上游) 不是关键字,而是你们通用的远程仓库的别名 git remote -v # 3.2 没有的话先添加团队项目地址 git remote add upstream 团队项目地址 # 3.3 获取团队项目最新版本 git fetch upstream # 3.4 合并到本地 git merge upstream/dev # 省事的话能够直接用 pull(pull = fetch + merge) git pull upstream/dev # 4. push修改到本身的项目上 # 4.1 工做完成后,先 add 和 commit 提交更新到本地仓库,push 前先pull一下团队项目最新的代码(预防工做期间有人修改致使代码冲突) git add . git commit -m "fix bug" # 首次会提示配置邮箱与用户名,生成到 ~/.gitconfig 文件中 git pull upstream/dev # 4.2. 推送到(本身的)远程仓库 git push # 若是分支名不一致,须要指定 push 到哪一个分支 git push origin HEAD:dev # 5. 登陆 Github,进入 Fork 的仓库,点击 new Pull request 请求合并到团队项目 # 6. 团队负责人 review 经过后, 点击 Merge pull request 合并到团队项目
图解:
html
参考:
http://www.cnblogs.com/schaepher/p/4933873.html
http://blog.csdn.net/javagaorui5944/article/details/52976365java