diff --git a/basic/index.html b/basic/index.html index d61568e..9c6e8f6 100644 --- a/basic/index.html +++ b/basic/index.html @@ -877,18 +877,36 @@ nothing to commit (working directory clean) stash@{0}: WIP on master: 5857ac1 hello with a flower -

- git stash pop - remove item from the list and apply to current working directory -

- -

After you've done the changes you were called away for, and you're ready to - continue from where you left off, run the git stash pop command - to bring back the working directory to that state and remove it from the stash list. +

The last item added onto the stash will be referenced by + stash@{0} and increment those already there by one.

-$ git stash pop
+$ vim hello.rb
+$ git commit -am 'it stops raining'
+[master ee2d2c6] it stops raining
+1 files changed, 1 insertions(+), 1 deletions(-)
+$ vim hello.rb
+$ git stash
+Saved working directory and index state WIP on master: ee2d2c6 it stops raining
+HEAD is now at ee2d2c6 it stops raining
+$ git stash list
+stash@{0}: WIP on master: ee2d2c6 it stops raining
+stash@{1}: WIP on master: 5857ac1 hello with a flower
+
+ +

+ git stash apply + grab the item from the stash list and apply to current working directory +

+ +

When you're ready to continue from where you left off, run the + git stash apply command to bring back the saved changes + onto the working directory. +

+ +
+$ git stash apply
 # On branch master
 # Changes not staged for commit:
 #   (use "git add <file>..." to update what will be committed)
@@ -897,28 +915,43 @@ stash@{0}: WIP on master: 5857ac1 hello with a flower
 # modified:   hello.rb
 #
 no changes added to commit (use "git add" and/or "git commit -a")
-Dropped refs/stash@{0}: (14ddbc6f2c26330e33d08faf15d88f816b6cbd45)
 

By default it will reapply the last added stash item to the working directory. This will be the item referenced by stash@{0}. You can grab another stash item instead if you reference it in the arguments - list. For example, git stash pop stash@{1} will apply the item + list. For example, git stash apply stash@{1} will apply the item referenced by stash@{1}.

-

If you want to leave the item on the stack, use - git stash apply instead. +

If you also want to remove the item from the stack at the same time, + use git stash pop instead.

- git stash clear - remove all items from the stash list + git stash drop + remove an item from the stash list

-

When you're done with the stash and/or you want to remove of all the - stored items, just run the git stash clear command. But only - do this if you're sure you're done with the stash. +

When you're done with the stashed item and/or want to remove it from the + list, run the git stash drop command. By default this will + remove the last added stash item. You can also remove a specific item if + you include it as an argument. +

+ +

In this example, our stash list has at least two items, but we want + to get rid of the item added before last, which is referenced by + stash@{1}. +

+ +
+$ git stash drop stash@{1}
+Dropped stash@{1} (0b1478540189f30fef9804684673907c65865d8f)
+
+ +

If you want to remove of all the stored items, just run + the git stash clear command. But only do this if you're + sure you're done with the stash.