1、fork 项目

进入项目组之后,第一件事就是将公司 GitLab 仓库中自己需要开发的项目【fork】到自己的 GitLab 仓库中,如下图所示:

androidstudi 查看gitlab账号 gitlab查看项目地址_右键


以后所有操作都是基于自己仓库中的项目,而不是公司仓库中的项目。

2、clone 项目

将项目【fork】到自己仓库后,将需要的项目【clone】到本地,如下图所示:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_02


可以使用 IDEA,也可以使用 Git 命令,打开需要存放项目目录,使用命令如下:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_03


待命令运行完成后,项目就【clone】本地了。

3、配置 remote

使用 IDEA 打开项目,在随意一个项目上右键,操作如下图所示:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_04


选择 Remotes… 会出现如下对话框,并作如下操作,添加 upstream 地址(公司仓库中对应的项目地址),具体操作如下图:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_05

4、切换分支

项目使用 IDEA 打开后,需要将项目切换到对应的开发分支上,如下图所示:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_06

5、获取公司仓库中的更新

【fork】到自己仓库的项目是无法自动与公司仓库中对应项目保持一致更新,此时需要我们手动获取公司仓库中的最新代码,这也是每天早上到公司的第一件事。
保持与公司仓库中的代码保持一致,可以减少后续【marge】出现的代码冲突。

右键需要更新的项目,操作如下:

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_07


点击【pull】后,会出现如下对话框,选择 upstream 连接,在选择需要获取更新的分支(若没有出现分支,可以使用 ctrl + F5 更新)后,点击【pull】即可获取更新,若有冲突,解决冲突即可更新到本地。

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_08


【注】上图对话框时 IDEA 2020.2 版本,其他版本样式可能不一样。

6、commit 代码

当一个独立功能、交复杂业务或其他节点开发完成后,尽量将该阶段的代码进行一次【commit】,这样即使下一个节点代码开发有误或其他原因造成代码出现问题,我们可以回退到上次【commit】的节点。

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_09

7、更新自己仓库

今天开发任务完成后,在临下班前,需要将当天开发的代码【push】到自己的 GitLab 仓库中,具体操作如下(也可以使用快捷键):

androidstudi 查看gitlab账号 gitlab查看项目地址_远程仓库_10


点击【push】后出现以下对话框,按照下图操作完成后即可【push】到自己的远程仓库(此时公司仓库还没有这部分代码)

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_11

8、提交 merge request

当【push】成功后,自己的远程仓库就更新了今天的代码,根据公司规定,提交【merge request】(合并请求),将自己代码更新合并到公司仓库中。

再次之前需要对 GitLab 进行设置,否则合并成功后,自己仓库中的分支会被删除,对需要合并的项目设置如下:

androidstudi 查看gitlab账号 gitlab查看项目地址_远程仓库_12


设置完成后,如下操作完成合并请求,待项目管理员完成审核后,就会合并到公司项目对应的分支中了。

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_13


androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_14


androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_15

9、合并冲突

在提交完成合并请求后,管理员对其进行审核,若在合并中有冲突,需要对有冲突的项目进行以上5、6、7步操作。

【注】在合并请求审核通过之前,我们往自己远程仓库 push(在合并请求之后的 push),管理员都可以看到我们最新的 push,无需关闭合并请求再次提交。


公司远程仓库、自己远程仓库、本地仓库关系如下所示

androidstudi 查看gitlab账号 gitlab查看项目地址_快捷键_16