* problem switching branches
@ 2013-02-26 23:08 J.V.
2013-02-27 5:17 ` Jeff King
0 siblings, 1 reply; 3+ messages in thread
From: J.V. @ 2013-02-26 23:08 UTC (permalink / raw)
To: git@vger.kernel.org
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?
I do not want to muck up the branch that I am now on by deleting anything.
Any ideas how this happened?
Obviously someone put derbyclient.jar there, not sure, but it is
supposed to be there so do not want to remove as advised.
any ideas on how I can get back to my master branch and get out of this?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: problem switching branches
2013-02-26 23:08 problem switching branches J.V.
@ 2013-02-27 5:17 ` Jeff King
2013-03-01 20:52 ` J.V.
0 siblings, 1 reply; 3+ messages in thread
From: Jeff King @ 2013-02-27 5:17 UTC (permalink / raw)
To: J.V.; +Cc: git@vger.kernel.org
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
2. You did a build of your project, generating the file in your
working tree.
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`).
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 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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: problem switching branches
2013-02-27 5:17 ` Jeff King
@ 2013-03-01 20:52 ` J.V.
0 siblings, 0 replies; 3+ messages in thread
From: J.V. @ 2013-03-01 20:52 UTC (permalink / raw)
Cc: git@vger.kernel.org
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
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-03-01 20:53 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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 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).