在实际开发中,你当前的工作正在进行,可能当前版本库中的代码处于一种混乱的状态,假如此时的你又有了其他的需求,比如想pull最新代码,又不想新增commit;或者为了fix一个紧急的bug,需要先返回上一个commit,修改完bug之后再进行当前的工作;又或者你想切换到其他分支解决一个重要而又紧急的bug。此时你可以使用git stash来暂存当前进行的工作。
基础命令:
git stash;
#do some work
git stash apply
解释:储藏(stash),就是可以获取你工作的中间状态(也就是你修改过的那些被追踪的文件),并把它保存的一个未完结变更的堆栈中,而你随时可以重新应用它。
进阶:
1.git stash save “message”
git stash save "work in progress for foo feature"
使用git stash save “message”你可以对本次存储的内存或对工作进度添加备注。
2.git stash list
git stash list
说明:当你多次使用’git stash’命令后,你的栈里将充满了未提交的代码,这时候你会对将哪个版本应用回来有些困惑,’git stash list’ 命令可以将当前的Git栈信息打印出来,你只需要将找到对应的版本号,例如使用’git stash apply stash@{1}’就可以将你指定版本号为stash@{1}的工作取出来。
3.git stash drop
git stash drop stash@{0}
说明:当你使用git stash apply后,虽然你暂时保存的工作已经被应用,但是先前保存的暂时的工作状态还会在栈中,因为开始时候暂时保存的工作已经被应用了,我们可能会想要把栈中的内容给删除掉,这时候我们可以使用git stash drop,加上你希望移除的储藏的名字,对栈中的内容进行删除,如果不加索引,默认删除的是最新的进度。
4.git stash clear
git stash clear
说明:当栈所有保存的暂时的工作进度都已经被应用了,那么你就可以使用git stash clear 一次性将栈中的暂时工作内容进度进行清除。
5.git stash pop
git stash pop stash@{1}
说明:在实际工作中,我们先将暂存的工作应用(git stash apply),然后再将栈中的内容删除(git stash drop),步骤略显繁琐,有没有一步到位的方法?有的,这就是git stash pop,它会执行先将储存的工作应用,再将栈中的内容删除,其实就是前面两步的综合。
6.git stash – – help
说明,更多详细内容,使用git stash –help会提示你的!
参考:
最新评论
我的是ipv4网络,如何使用直播源啊!
我今天试了,不想啊,我的是新疆昌吉移动的网络。
收不到验证码电报
现在充值29起了