代码已经提交到测试环境走测试流程啦,但是这部分A功能暂时不优先上线啦,需要紧急上线其他B功能,所以需要将测试分支的代码回滚到没有A功能的时候,继续开发B功能。可以如下操作git:
开发过程中可能遇到需要在某个分支中中的某个提交里进行修改。
那么首先我们先切换到要用的分支
git branch -av 查看所有分支。
切换分支 git checkout 分支名
使用git log -10 查看最近10条提交。 找到对应的commit id,默认前面6个即可。他会找到对应的。
git checkout a6572b1214
在此分支上进行修改后进行add .然后 commit 提交。 这时候是无法push的。会提示你先提交到一个远程分支上
git push origin HEAD:<name-of-remote-branch>
而你用git push origin 新分支名,也会报错。会提示 error: failed to push some refs to xxx
因为你本地使用的是一个远程游离分支,需要先创建一个新本地分支进行绑定 git checkout -b new_branch_name
然后提交到一个远程新分支上。git push origin origin_new_branch_name
这样就可以了。原来的分支也不会丢失。