Git 仓库
项目经理:
- 在 gitee 上创建一个远程中的空白中央仓库.
- 将本地已搭建项目的仓库与远程仓库关联,将本地版本库推送到远程中央仓库中:
$ git remote add origin xxx
$ git push origin master
- 进行远程中央仓库设置:
1.设置为开源项目.
2.添加小组成员到当前中央仓库中.
3.在远程中央仓库中,基于 master 分支,创建 dev 分支(以后小组成员写的代码,向 dev 分支中合并),将 dev 分支设置为默认分支
开发人员:
- 从远程中央仓库中克隆代码(默认克隆的 dev 分支).
$ git clone xxx
- 在本地
创建自己
的开发使用到的分支
$ git checkout -b 分支名称
# 如:
$ git checkout -b zhenzhi
在自己的分支中进行开发
:在工作空间中完成任务编码- 在完成一个功能并通过自测后,提交本地版本库
$ git add -A
$ git commit -m 'feat: 新功能' # feat:新特性 fix:修改bug chore:项目架构 refactor:项目重构 doc:文档 test:测试 .........
- 将本地版本库推送到远程中央仓库
自己的分支
中:
$ git push origin zhenzhi
- 在远程中央仓库自己的分支中,提交 Pull Request(合并请求,简称 PR) 。源分支选择为自己的分支,目标分支为 dev 分支,填写标题与说明,然后提交 PR
- 如果提示绿色的 “可自动合并” 则说明源分支与目标分支不存在冲突,可直接合并,需要管理员通过评审测试后可合并到目标分支中
- 如果提示红色的 “不可自动合并” 则说明源分支与目标分支之间存在代码冲突问题。通常先解决冲突后再进行合并
冲突的主要原因是开发者都操作过相同的文件,在文件中存在冲突。
1.切换回 dev 开发分支
$ git checkout dev
2.将远程中央仓库中 dev 分支的最新版本拉取到本地
$ git pull origin dev
3.切换回自己的分支:
# 如:
$ git checkout xiaohong
4.变基(改变基准分支,将最新的 dev 分支合并到当前分支来)
$ git rebase dev
5.如果变基失败(报错)则说明不能自动解决所有冲突问题,需要手动解决冲突
6.查看冲突文件:
$ git status
7.与小组成员讨论,手动解决所有冲突问题
8.在本地再次运行项目,查看是否能正常运行
9.手动解决冲突后,将已解决冲突文件添加到暂存区:
$ git add -A
10.继续变基:
$ git rebase --continue
11.如果进入编辑提交版本信息的界面(vim编辑器界面),可按 I
键进行插入编辑。要退出编辑器界面,按 Esc
然后输入 :wq
保存并退出。
12.如果在分支名称后还有 |REBASE 1/1
这类似的提示信息,则继续按照上述变基步骤处理(从5步开始继续变基)。
13.解决完冲突后,继续将自己的分支推送到远程中央仓库,提交 PR。如果本地自己分支与远程自己的分支存在冲突不能推送,可删除远程自己的分支再推送。