Git-分支合并与冲突解决(三)

一、分支

  • 创建dev分支 git branch dev
  • 删除本地仓库dev分支 git branch -d dev
  • 删除远程仓库dev分支 git push origin :dev
  • 切换到dev分支 git checkout dev
  • 合并分支 git merge dev
  • 重命名分支 git branch -m OldName NewName

分支合并

  • 模拟处理操作
# 已知 master 分支上有文件b.txt 
git branch dev # 新建分支
git checkout dev  # 切换到新建的分支上
echo "date" >> b.txt # 与master 的b.txt 文件内容不一致
git add b.txt  # 添加到暂存区
git commit -m "dev-b.txt"  # 提交到暂存区
git push origin dev # 推送到远程dev分支
git merge dev  # 合并分支,dev内容合并到master 上
git push origin master  # 合并内容推送到远程分支,合并完成
  • 冲突处理
# 本地文件和远程文件不一致是push导致的错误 报错格式
To https://gitee.com/yujiantang/study.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://gitee.com/tangge/study.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
  • 冲突解决方法 \color{red}{报错或解决冲突一定先要pull远程代码}
git pull origin master # 先将远程代码拉下来
"""
此时会提示那个文件有提取,并自动将该文件合并
=======和>>>>>>> 之间内容为远程修改,=======和>>>>>>> 之间内容为本地修改内容
手动修改这个文件,修改完删除等号和箭头所在行,重新提交
"""
git add . 
git commit -m "修复冲突" # 提交修复后数据
git push -f origin master # 强制提交,远程库替换为本地库文件
  • 谨慎使用自己不熟悉的命令,使用前先clone 远程代码,本地代码做好备份
    会删除本地修改内容git restore 文件名
    解决冲突时谨慎使用网上提供的rebase命令,他可能导致你的本地劳动成果全部喂狗了
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容