Re: Switching branches without committing changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Joe Fiorini <joe@xxxxxxxxxxxxxxxx> 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.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux