Thread (5 messages) flat view 5 messages, 3 authors, 2016-06-15

Re: Switching branches without committing changes

From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:44:24

Joe Fiorini [off-list ref] wrote:
I'm still a newbie to Git (and this list), so if I don't provide  
enough details please let me know what you need and I will provide :).

I'm trying to switch branches without committing my changes.  Is this  
possible?  For example, I'm working on a site, I'm testing the  
implementation of a new technology (branch B), I'm not quite done  
there (or I forget to commit everything) and I want to implement  
something else new.  I create a new branch off of B, called B.1, and  
then make some changes.  I commit only the changes that apply to B.1  
and then try to go back to B.  However, I get an error saying a file I  
changed in B is not uptodate and it cannot merge.  What am I doing  
wrong and how can I get back to B?
Use `git checkout -m` to switch the branch anyway.  However, if
there is a merge conflict while you are trying to carry the changes
to the other branch you may be faced with a merge conflict you are
not prepared to resolve, or simply cannot resolve in a reasonable
period of time.

You may want to use `git stash` to save your dirty changes off to
a safe area, then switch branches.  Your changes won't be there,
but you can get them back with `git stash apply 0`.  If things go
badly, you can go back to B.1 and use `git stash apply 0` to put
the changes back where they were, and figure out what you are going
to do from there.

-- 
Shawn.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help