Git add回退 与 切换分支提交 与reset commitID 与 cherry-pike重复提交

来源:互联网 发布:阳光网络问政 编辑:程序博客网 时间:2024/06/05 03:46

一、add的回退操作

当我们有时候运行 add . 之后,发现自己的分支不对,需要进行撤销操作,这时候使用git reset HEAD,即可以把暂存区的修改取消掉,这时看你的代码,依然是修改后的状态,等待你重新提交。


二、利用缓存区切换分支提交

上一篇我们说了Git提交代码的流程,但是有时候我们发现我们想把代码提交到另外一个远端的分支上,你在A 分支做的修改,你想把修改提交到B分支上,这时候不能直接切换分支,需要将你做的修改存储起来,切换分支后提取出来,在提交合并:

1、git stash   --将本地代码暂存到栈中  (git stash list --查看栈中的内容)

2、切换分支 (git checkout 分支名)

3、git stash pop --恢复栈中的代码到本地

4、然后在新分支进行提交合并

5、当然提交合并完成后需要清空栈中的缓存 (git stash drop --清空栈)


-----(查看分支  git branch 与 git branch -a )


三、使代码回到任意一个commit ID

git reset commitID  (可以查看历史的提交找到提交ID,有些文件名的变动与文件夹的变动无法变动需要手动删除)





四、我们刚提交了代码,但是发现这些代码需要提交到另一个分支上面

可以用git cherry-pike commitID 来操作

1、立即使用git log命令查看刚刚提交的commitID

2、然后切换到想再次提交的分支上面,运行git cherry-pike命令来提交到新分支上,再次之前可以更新一下保证分支最新代码

3、这种操作和stash pop有异曲同工之处,stash pop是未提交时候使用,然而这种是commit之后来操。(git stash缓存有时间限制)



以下是我们提交代码的流程图:


原创粉丝点击