Learn Git (四):git的stash命令

stash命令可用于临时保存和恢复工作进度,必须是处于git版本控制下的文件,未add到git的文件无法使用。

如果本地代码需要pull最新代码,而最新代码跟当前本地代码又有冲突的时候,就可以先将当前本地代码的改动stash放到暂存区,然后再pull最新代码就不会有冲突了。本地代码更新之后,再用stash的apply或pop命令,将之前的改动再应该回来。


(1)执行存储,将代码的改动放到暂存区

git stash  [save "save message" ]    //save "save message" 用于添加备注,方便查找

(2)显示暂存的工作进度列表,编号越小代表保存进度的时间越近

git stash list

(3)显示哪些文件做了改动。默认显示第一个存储,如果要显示其他存储,后面加stash@{$num},比如第一个 git stash show stash@{0}。加上-p参数会显示出每个文件的具体改动点。

git stash show [stash@{$num}] [-p]

(4)应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}

git stash apply [stash@{$num}]

(5)命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

git stash pop [stash@{$num}]

(6)删除一条保存的工作进度,此命令的stash@{num}是可选项,在多个工作进度中可以选择删除,不带此项则默认删除最近的一次进度相当于git stash drop stash@{0}

git stash drop [stash@{$num} ]

(7)删除所有缓存的stash

git stash clear



参考:https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html

你可能感兴趣的:(Learn Git (四):git的stash命令)