Git操作案例记录

场景1:合并分支到master时出现冲突

// 先切到master分支,pull最新代码
git checkout master
git pull
// 然后切回自己的分支,合并master分支
git checkout branch-name
git merge master
// 然后查看状态,找到both modified的文件
git status
// 选择要的部分,修改文件后add冲突文件
git add 文件路径
// 编辑commit后重新推送到远程分支
git commit -m "冲突处理"
git push

场景2:commit描述修改

// 先查看提交记录
git log
// 然后回退一个版本(版本号要选择自己提交的上一个版本)
git reset --soft 39aae32a6c016a279bd1c6684ecdfb52c0f76ad9
// 这时该版本号前的commit就消失了,然后重新编辑
git commit -m "重新编辑描述"

// 扩展延伸
--soft 只会回退掉commit的信息,可用于重新编辑commit
--mixed 会回退到add之前,可用于重新修改文件,再重新操作add文件,commit编辑
--hard 彻底回退到某个版本,源码也会变成该版本的内容

场景3:分支修改一半时,想将master最新的代码合并过来

// 先将分支修改的内容暂存
git stash
// 然后切换到master分支,拉取最新代码
git checkout master
git pull
// 再切回分支,释放暂存内容,合并代码
git checkout branch-name
git stash pop
git merge master

场景4:换了一个代码管理工具,要更换远程关联仓库

git remote set-url origin 地址

场景5:多人合作修改同一个分支,要将对方已经提交到分支的代码合并到本地分支

git fetch origin 分支名
git merge origin/分支名

场景6:使用rebase想要合并多个commit时,执行一半卡住了,显示(master|REBASE 1/3),文件也出现了冲突,怎么操作都没反应,分支也切换不了

// 中止操作就可以了
git rebase --abort

场景7:使用rebase想要合并多个commit时,因为有pull过代码,导致该分支查看提交记录时,包含了很多不属于该分支的提交记录,在使用git rebase时,记录太多没法找到自己的commit进行处理

// 只能另辟蹊径,先切回master分支,另起分支
git checkout master
git pull
git checkout -b new-branch
// 然后将旧分支改动的文件切到新建分支
git checkout old-branch ./menus/app.php
// 然后重新commit提交推送,用新的分支来创建合并请求
git commit -m "提交描述"
git push

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值