Re: Git checkout: difference in behavior and what is in the documentation
- From
- Chris.Cheney <chris.cheney.nospam@tesco.net>
- Date
- Jul 2, 2010, 08:29 UTC
- Message-ID
- <Xns9DA96096F7CEChrisCheneytesconet@80.91.229.10>
- In-Reply-To
- <201007020809.17551.markus.heidelberg@web.de>
Markus Heidelberg <markus.heidelberg@web.de> wrote in news:201007020809.17551.markus.heidelberg@web.de:
Show 35 quoted lines
> Sabyasachi Ruj, 2010-07-02 07:30: >> I've asked the question in detail in Stack Overflow: >> >> http://stackoverflow.com/questions/3163325/confusion-about-git-checkout > > You should rather post the question and not only the link. Here is the > relevant part: > >> I am confused about a behavior of git checkout. The documentation of git >> checkout says: >> >> --merge >> When switching branches, if you have local modifications to one or >> more files that are different between the current branch and the >> branch to which you are switching, the command refuses to switch >> branches in order to preserve your modifications in context. However, >> with this option, a three-way merge between the current branch, your >> working tree contents, and the new branch is done, and you will be on >> the new branch. >> >> But, I have done a small test which is not behaving as said in the bold >> part. That is: >> 1. I create a git repo >> 2. create a directory and a file with some conent and commit it in >> master branch. >> 3. Create another branch "testbranch" >> 4. change the content of the file in master. But did not commit. >> 5. switched to "testbranch". >> 6. Now the changed and uncommitted changes from master branch come to >> testbranch! >> >> Wasn't it supposed to fail, if I have some local changes and wanted to >> switch to a branch? > > 'master' and 'testbranch' are the same,
Rather, 'master' and 'testbranch' are the names of different branches, but they identify the same commit at that time.