情景
测试分支 dev,发版分支 master,开发分支a
正常的分支发版流程,从master中打出开发分支a,开发人员编写代码commit提交到分支a,完成后将开发分支a合入dev发布到测试环境测试,测试无误,将开发分支合入到master,发版master。
可中途某个开发人员错误的将自己直接在dev上修改,然后为了将代码拿回来,直接将dev合入了他自己的开发分支,开发分支直接合入master,导致dev上的代码被合入了master。过了一阵子发现这个情况,需要将这一次合入master的撤销,revert 操作。撤销之后,新的开发任务完成放到dev测试,导致之前的合入master的a分支代码被撤销,需要解决再次将a分支代码合入dev。
方法
- 从master中拉取新的开发分支b
- 将分支切换到开发分支a
- 执行git reset --soft 回退并寄存中间提交的commit 代码
- 将这些代码寄存起来
- 切换分支到新打出的开发分支b
- 将刚刚寄存起来的代码重新拿出来
- 解决冲突,提交commit到开发分支b
- 将开发分支重新合入dev
问题解决。
如何查看第一次的提交
git 命令 git log --pretty=oneline
178cfcfc2010a5b6391283a77a69fc44c1a52d72 fix salt端口不加密
8744a005a33d5363e4b82819db96ad22de6e9b70 fix 增加判断
cbe08c949126bef7b94df05255a0cb26f47bd900 add 刷新token
7cce66a613111ec5e454e4e82fc3d359e7b83b05 add 全局加密
1136761c958a0225e31f350f21340fabf177b6d4 fix encrypted
e142e6d1cf5ab65571afd20a94ef4d71xe9b5542 fix aes name
5f61fc8ad88a2c66b311523d72f6f83fvc605954 add aes-256-cbc iv
3998e70ed316dba9d852899ebea968c0e32798f5 add success
3c4f09954a7713eddf3cdef495705a85x3e4c0a1 add raw
b58b014b9203f18171e7807927d44924a413e646 add 获取用户salt接口
dd86100379c2c776bf347e29387253bbr8346eb4 add sql salt field
回退并保存中途的修改方法 git reset --soft XXX,注意一定要这个--soft参数
git reset --soft dd86100379c2c776bf347e29387253bbr8346eb4
当开发分支a错误地合入dev并进一步进入master,通过git revert撤销操作后,需要重新将a分支的正确代码合入。解决方法包括:从master创建新分支b,切换到a分支,使用git reset --soft保存修改,切换到b分支恢复代码,解决冲突,再将b分支合入dev。要查看第一次的提交,可以利用特定的git命令。
3295

被折叠的 条评论
为什么被折叠?



