GIT与版本管理

0x01.工程化版本管理GIT分支流程图

git_flow.jpg

0x02.流程简介

1.分支介绍

  • Master: 主分支,该分支限制提交,只可以拉取。只有TL在可以合并分支。
  • Hot-Fix: 解决Master分支的线上Bug时,使用此分支进行紧急修复,修复后合并到Mastet/Develop分支。
  • UAT: 测试分支,当版本开发完毕,进行集中测试时,从Develop分支拉取。
  • Develop: 开发分支,新版本的迭代分支,开发人员分支从该分支拉取。
  • Feature/AB: 每个开发的个人分支,从Develop分支拉取,开发完成后mergeDevelop分支。

2.流程及命令介绍

  • 初始化仓库
# 创建README
echo "# init project" >> README.md

# 初始化
git init

# 添加文件
git add README.md

# 提交到本地,-m 表示注释
git commit -m "first commit"

# 添加到远程仓库
git remote add origin https://host:port/project.git

# 提交到Master分支
git push -u origin master
  • 创建分支
# 查看分支列表以及当前分支
git branch

# 创建分支,是分支的当前分支的代码
git checkout -b <分支名>
  • 提交代码
# 添加文件 .表示添加当前目录及子目录全部,不添加全部可以指定文件
git add .
git commit -m "添加注释"
git push
  • 合并分支
# 首先切换到主分支
git checkout master

# merge uat 分支到主分支
git merge --no-ff uat
  • 解决冲突,使用过程中出现版本冲突情况很正常,如果出现冲突,重新编辑冲突的文件再次提交就可以了。
# 冲突文件会标记=====,按照需求修改后,再次提交
git add .
git commit
  • tag 管理

当版本开发完成后,合并到开发环境,测试以及bug修改完毕。从uat分支合并到master后,需要进行打一个tag标记,属于留档记录。

# 创建一个tag
git tag -a <tag name>

# 删除一个tag
git tag -d <tag name>

# tag默认是不提交到远程服务器的,使用命令提交
git push origin --tags

# 查看tag
git tag

# 通过tag检出
git checkout tag

0x03.GIT命令速度差表

git_table.png

0x04.参考文章


zhiyuan
132 声望6 粉丝

关注技术&商业智能&数字化转型