Git的使用方法

什么是Git

一个分布式的代码管理工具。与SVN这种集中式的代码管理工具相比,有传输速度快,独特的分支管理等优点。最大的便利之处是可以同时进行多人协作,共同维护同一份代码。

GitFlow工作流

虽然Git的使用十分自由,但一般来说,开发人员会遵循约定俗成的规则来进行敏捷开发,该工作流程被称为GitFlow

8A6A0B7D.PNG

GitFlow的常用分支命名:

  • Master:部署在生产环境的最主要的分支,唯一且最稳定。
  • Develop:部署在开发环境里的分支,开发人员可以在该分支上进行修改合并等操作。
  • Feature:从Develop分支衍生出来的,可以同时存在多个Feature分支,但需要遵循feature/XXX的格式命名。开发人员可以在该分支上开发各自任务中的功能点,最后合并回Develop分支。

如何使用Git进行开发协作

Git的安装和常用命令

  1. 按照国际惯例,先来下载安装。
  • 安装包:请选择适合自己电脑的版本进行安装。
  1. 按顺序执行以下命令,将远程仓库document的克隆到本地并创建新的feature分支进行编辑开发。
    ```powershell

    将远程仓库克隆到本地。

    注意:第一次克隆时需要验证身份,请按提示输入GitLab的用户名和密码。

    git clone http://git.cq.cn.fujitsu.com/summit_team2/document.git

打开document文件夹

cd document

查看本地分支情况

git branch

将远程的develop分支拉取到本地,并切换到该分支

git checkout -b develop origin/develop

从develop派生出新的feature分支,并切换到该分支

git checkout -b feature/XXX

回到桌面文件夹中,对文档进行编辑,保存。

查看文档变更状态

git status

将修改内容从工作区移到暂存区

git add .

提交修改内容,打log保存修改履历。

git commit -m ‘修改内容…’

将本地分支推送到远程仓库上,并建立映射关系。

git push -u origin feature/XXX

此后需要继续修改分支内容的话,可以重复后面三步操作,直到修改完成。

  1. <a name="30509e22"></a>
  2. ### 提交合并请求
  3. 从菜单`Merge Request`->`New Merge Request`进入以下页面,新建合并请求。
  4. ![092223.png](https://cdn.nlark.com/yuque/0/2021/png/127593/1626334981322-bf4866b4-49ab-40f4-99ee-647e49e40852.png#clientId=u3b38e48a-7394-4&from=ui&id=ua44ef235&margin=%5Bobject%20Object%5D&name=092223.png&originHeight=349&originWidth=1290&originalType=binary&ratio=1&size=27420&status=done&style=none&taskId=u05d88951-2bc6-48ba-a343-b3535771f12)
  5. - 左边`Source branch`:选择你自己新创建的feature分支。
  6. - 右边`Target branch`:选择develop分支。
  7. 点击绿色按钮继续,进入以下页面。
  8. ![093643.png](https://cdn.nlark.com/yuque/0/2021/png/127593/1626334995075-a11a2050-efe0-467d-a1a9-42f47be7f664.png#clientId=u3b38e48a-7394-4&from=ui&id=u3d1550a4&margin=%5Bobject%20Object%5D&name=093643.png&originHeight=864&originWidth=1671&originalType=binary&ratio=1&size=56683&status=done&style=none&taskId=u691e4d16-54be-4823-b3b1-9e6ff56e0b0)
  9. - Title:简要填写本次修改内容。
  10. - Description:可以参考模板填写本次修改的具体内容。
  11. - Assignee:合并请求的审核者,`@chen.xiaohui`
  12. - Reviewer:文档审核者,可以随意填。
  13. - Milestone:里程碑,可填可不填。
  14. - Labels:标签,可填可不填。
  15. - Merge options:一般默认就可以了。
  16. <a name="58b16d17"></a>
  17. ### 删除本地分支
  18. 审核通过后,你修改的内容就会被合并到`develp`分支里,同时会删除远程仓库中的`feature/XXX`分支。请用以下命令同步删除你本地仓库里的`feature/XXX`分支。
  19. ```powershell
  20. #先切换回本地的develop分支
  21. git checkout develop
  22. #从远程拉取代码同步更新develop分支
  23. git pull
  24. #打开本地文档,查看你修改的内容是否已经同步更新
  25. #确认过后就可以删除本地的feature分支
  26. git branch -d feature/XXX

最后,一个小彩蛋

如果实在是对命令行不熟悉的话,可以使用图形化界面的Git管理工具SourceTree进行以上操作。

以上。Happy Working!如何用GitLab与同事进行开发协作 - 图2