X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=git-reset.html;h=915201d1667e3b564aa4c13b421f6185a040252a;hb=e663a7acb10392380c82054b20e6011650051425;hp=7cacfd29939e8b0238349380a695270ee6081a87;hpb=1a4e841b439ba014b365999c3a6b9e2be3740bd8;p=git.git diff --git a/git-reset.html b/git-reset.html index 7cacfd29..915201d1 100644 --- a/git-reset.html +++ b/git-reset.html @@ -444,6 +444,34 @@ brings your index file and the working tree back to that state, and resets the tip of the branch to that commit. +
+Interrupted workflow +
+
+

Suppose you are interrupted by an urgent fix request while you +are in the middle of a large change. The files in your +working tree are not in any shape to be committed yet, but you +need to get to the other branch for a quick bugfix.

+
+
+
$ git checkout feature ;# you were working in "feature" branch and
+$ work work work       ;# got interrupted
+$ git commit -a -m 'snapshot WIP' (1)
+$ git checkout master
+$ fix fix fix
+$ git commit ;# commit with real log
+$ git checkout feature
+$ git reset --soft HEAD^ ;# go back to WIP state (2)
+$ git reset (3)
+
+(1) This commit will get blown away so a throw-away log message is OK.
+(2) This removes the 'WIP' commit from the commit history, and sets
+    your working tree to the state just before you made that snapshot.
+(3) After (2), the index file still has all the WIP changes you
+    committed in (1).  This sets it to the last commit you were
+    basing the WIP changes on.
+
+

Author

@@ -460,7 +488,7 @@ and resets the tip of the branch to that commit.