git fork 工作流

前言

fork可以理解为对某个仓库的拷贝.fork工作流可以让我们在不影响主项目的前提下,自由改动代码.

fork常用的使用场景有两种

  1. 向别人的项目提建议
  2. 从别人项目作为自己项目启动开端,延伸开发

什么是fork工作流呢?

要理解fork,需要明白三个分支的概念:本地分支(local branch),远程分支(一般为origin branch),公共分支(upstream branch).

我们在进行日常代码pull和push的时候,是对origin的修改和同步,如果开发完成后,想将自己的改动同步到公共分支,需要创建pull request

image

如果其余贡献者已经对项目进行了修改,如果想在这个基础上做新的修改,需要同步fork,就是从公共仓库获取最新代码

image

操作

开始你的fork:

在项目顶部,点击fork按钮,现在你就拥有一份仓库的fork啦!

image

点击clone按钮,就可以获取git 在fork之后的URL了.

开发流程

1.配置git

2.为fork创建一份本地的拷贝

复制项目的URL,在终端进入你理想的文件夹下,执行

git clone ssh:``//git@git.sankuai.com/UserName/projectName

3.验证

通过git remote -v 查看远程分支,默认的远端仓库是origin.如下

origin https://github.com/user/repo.git (fetch)

origin https://github.com/user/repo.git (push)

如果想要随时更新公共分支,可以加入远端公共分支的仓库

git remote add upstream <url>

再次查看 git remote -v

$ git remote -v

origin https://github.com/user/repo.git (fetch)

origin https://github.com/user/repo.git (push)

upstream https://github.com/otheruser/repo.git (fetch)

upstream https://github.com/otheruser/repo.git (push)

提示:如果本地新增了branch,在git push之后,之后push到origin仓库,upstream仓库是没有的,所以需要,来设置upstream仓库,然后通过git push upstream --tags,更新公共仓库的tag

4.同步远端分支

想要保持本地分支和远端公共分支同步,可以通过以下命令

git fetch upstream    ``//从远端分支获取更新`

git checkout master 

git merge upstream/master   ``//merge更新

5.提交

提交代码流程是一样,只是加了一个创建pull request的操作

git commit — git pull — git push — 打开git的网页,创建pull request,请队友code review

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容