代码合入gitlab流程,亲测有效

description: 介绍了TEST代码提交的流程

TEST 代码提交流程

TEST 平时的开发借助于 Gitlab 进行代码的管理, 并定期同步代码到TFS上进行备份管理. TEST的代码提交流程遵循Github开源代码PR流程. 这里以Github为例,Gitlab使用机制类似.

TODO 这里的图后续需要替换为gitlab的操作界面.

简单过程

首先git分为本地仓库(自己电脑中)和远程仓库(git官网自己的账号中),仓库可以理解为保存代码的地方,简单的说是在自己本地仓库修改代码,提交到自己远程仓库,提交pr后被接受后再会被合并到master。

详细过程

Fork

将项目fork到自己的仓库中,可以在github的首页搜索到自己的想要的开源项目,我以flink为例:

进去后,点出fork,稍等片刻,此项目便会出现在自己的仓库中

进到自己fork的项目中,就能看到Clone or download按钮,如下,记下这个https链接。

通过上面的步骤,已经将远程仓库建好

Clone

需要将远程仓库clone到本地,此处省略安装本地github的过程,随便在哪个目录(项目存放的目录),右键打开一个Git base,执行一下git clone https://github.com//.git(使用上一步的https链接),等待命令完成,时间视下载速度而定,也许会比较慢,网上也有些可以提高git clone速度的方法,不防一试

$ git clone git@monkey.united-imaging.com:AliceDai/TEST.git

上面的命令完成后,当前目录下会多一个目录,我clone的是TEST,所以会多一个TEST目录,进到TEST目录中,试试跑一下git status试试,会提示现在是master分支。

$ git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
  (use "git push" to publish your local commits)

用git remote -v命令,可以看到此时只与自己的远程仓库建立了连接

$ git remote -v 
origin  git@monkey.united-imaging.com:AliceDai/TEST.git (fetch)
origin  git@monkey.united-imaging.com:AliceDai/TEST.git (push)

还需要与上游建立连接,这里上游指的是一开始fork的那个项目源,以TEST为例,执行如下命令:

$ git remote add upstream git@monkey.united-imaging.com:TEST/TEST.git
$ git remote set-url --push upstream no_push
$ git remote -v
origin  git@monkey.united-imaging.com:AliceDai/TEST.git (fetch)
origin  git@monkey.united-imaging.com:AliceDai/TEST.git (push)
upstream        git@monkey.united-imaging.com:TEST/TEST.git (fetch)
upstream        git@monkey.united-imaging.com:TEST/TEST.git (push)

建立分支

然后就可以在本地建立自己的branch进行代码开发了,建议在自己分支上修改,而不是直接在master分支修改

$ git checkout -b my_branch

修改代码

balabala

提交

可以先使用git status来查看有哪些文件被修改了

$ git status
$ git add *.cs  // 将要提交的文件都加上
$ git commit -a -m "modify ***"  //需要注意的是git commit只是把修改的代码提交到当前分支
$ git push -u origin my_brance // 将本地的代码提交到远处仓库

提交PR Merge Request

PR大量修改导致需要Merge

在你提交pr的时候,项目可能已经有了比较大的变更(每天都有世界各地的coder提pr),而你没有将分支保持与项目同步,所以有可能会导致check失败,pr被无视.

所以每次提交pr前,都要先从做代码同步。过程如下:

$ git fetch upstream
$ git checkout master
$ git merge upstream/master
$ git checkout -b my_branch
$ git rebase master
$ git push origin my_branch:my_branch



作者:不会撒娇的猫咪
链接:https://www.jianshu.com/p/6ac7e92bae90
来源:简书

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值