From: "J.V." <jvsrvcs@gmail.com>
To: unlisted-recipients:; (no To-header on input)
Cc: "git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: problem switching branches
Date: Fri, 01 Mar 2013 13:52:33 -0700 [thread overview]
Message-ID: <51311511.9080601@gmail.com> (raw)
In-Reply-To: <20130227051740.GB10976@sigill.intra.peff.net>
On 2/26/2013 10:17 PM, Jeff King wrote:
> On Tue, Feb 26, 2013 at 04:08:55PM -0700, J.V. wrote:
>
>> I was on my master branch, I then checked out a branch (
>> origin/somebranch ), made no updates
>> but did a few git pulls on the branch over about a week; then made a
>> small change to only a single file & committed & pushed.
>>
>> Now am trying to go back to my master branch and get:
>>
>> error: The following untracked working tree files would be
>> overwritten by checkout:
>> lib/derbyclient.jar
>> Please move or remove them before you can switch branches.
>> Aborting
>>
>>
>> I did not put that jar file there (I edited a single config file),
>> how do I now get back to my master branch?
> Not knowing anything about your project, it's impossible to say for
> sure, but this often happens with something like:
>
> 1. lib/derbyclient.jar used to be generated by your project's build
> procedure
This jar was put on the master branch last year; It does not exist in
the branch that I am now on where I get the error message (I am on a
branch that was created for a previous release).
>
> 2. You did a build of your project, generating the file in your
> working tree.
This jar is downloaded from the web and put there; we did not generate.
>
> 3. Meanwhile, somebody upstream added and commited lib/derbyclient.jar
> directly in the repository. This might have been intentional (it
> used to be a generated file, but now is included as source), or it
> may have been an accident (mistaken use of `git add`).
It was committed intentionally, last year, but does not exist in the
branch that I am now on, but it is there.
>
> 4. You try to switch to the master branch with the new commits from
> (3). Git sees that the copy of the file in your working tree would
> be overwritten and lost (since it was never committed by you), so
> aborts.
>
> If you are sure that the file in the working tree does not contain
> anything interesting, you can use "git checkout -f master" to force the
> overwrite.
I will try this.
>
>> I do not want to muck up the branch that I am now on by deleting anything.
>> Any ideas how this happened?
> You won't hurt the branch you are on; you will just lose the contents in
> the untracked working tree file. That's probably fine if it is a
> generated file, as in the scenario I described above. We know that the
> file is not included in the branch you are on (otherwise, it would not
> be listed as untracked). And even if it were, you would only impact the
> branch by committing the changes, not by changing the working tree.
>
>> Obviously someone put derbyclient.jar there, not sure, but it is
>> supposed to be there so do not want to remove as advised.
> It won't be removed; it will be overwritten with the version of the file
> that is on "master". Which is probably what you want; you may want to
> look at `git log master -- lib/derbyclient.jar` to see why it was added.
>
> -Peff
prev parent reply other threads:[~2013-03-01 20:53 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-26 23:08 problem switching branches J.V.
2013-02-27 5:17 ` Jeff King
2013-03-01 20:52 ` J.V. [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51311511.9080601@gmail.com \
--to=jvsrvcs@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.