git 合并练习

用于git merge练习

常规步骤

克隆仓库

  1. git clone xxxx
  2. git checkout -b dev-xxx-test,xxx为自己标识的id,例如本例dev-xxx-test
命令描述
git clone克隆仓库
git checkout -b在本地创建并切换到新命名的分支

内容修改并提交

  1. 在test.md末尾追加想添加的的内容,例如增加一行:“test9.txt”
  2. git add test.md
  3. git commit -m"feat: Add test9"
  4. 在test.md末尾追加想添加的的内容,例如增加一行:“test10.txt”
  5. git add test.md
  6. git commit -m"feat: Add test10"
  7. git push origin dev-xxx-test
命令描述
git add添加文件到git 缓存
git commit -m一次提交,本次提交描述信息为-m后的描述
git push推送当前的本地分支到远程分支

合并多次提交为一次提交

建议先阅读一下git merge squash 和 rebase 区别
所有功能开发完成后等待合并,例如本次有2个commit,合并到master分支。需要将一个功能的多个commit合并成一个commit再进行合并。开发规范指导链接见
开发规范

  1. git rebase -i master,查看自己分支和master分支的commit差异
  2. git config --global core.editor “vim”,设置git默认编辑器为vim(可选),后续以vim为例子,若不用vim,根据git 弹出的相应提示按照操作即可
  3. 输入命令i,将除了第一个的所有commit前的pick修改为s,pick和s的含义见弹出的提示
  4. 按下esc键,再输入:wq
  5. 弹出行命令框,用于修改多个commit合并成一个commit的文字描述。输入i,删除之前所有的commit文件描述,添加合并后的描述(例如feat:Add test.text content),按下esc键,再输入:wq,ps:不同git 版本有一些差异,按照命令行提示完成(2~4即可)
  6. git log,查看应该只有一次提交
  7. git push -f,强制推送到远程仓库
  8. 再git网页上发起merge request请求,让review人合并代码,并删除开发分支
命令描述
git rebase -i查看自己分支和master分支的commit差异
git log查看自己分支的历史提交记录
git push -f强制推送到远程仓库

冲突解决方式

  1. git checkout master,切换到master分支
  2. 修改test.md第一行内容为test11.txt
  3. git add test.md
  4. git commit -m"feat:test rebase conflict on master"
  5. git push
  6. git checkout dev-xxx-test
  7. 修改test.md第一行内容为test11222.txt
  8. git add test.md
  9. git commit -m"feat:test rebase conflict on dev-xxx-test"
  10. 修改test.md第二行内容为test2222.txt
  11. git add test.md
  12. git commit -m"feat:test rebase conflict on dev-xxx-test"
  13. git rebase -i master,查看自己分支和master分支的commit差异
  14. 找到冲突文件,手动解决冲突(将test.md中包含有"====="之间的内容修改)
  15. git add test.md
  16. git rebase --continue
  17. git add test.md
  18. git rebase --continue
  19. 然后继续执行合并多次提交为一次提交4之后的步骤即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值