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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).