octave-maintainers
[Top][All Lists]
Advanced

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

Re: merging stable to default fails


From: Daniel J Sebald
Subject: Re: merging stable to default fails
Date: Sat, 12 Jan 2013 05:15:38 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 01/12/2013 01:31 AM, Daniel J Sebald wrote:
On 01/11/2013 09:27 PM, John W. Eaton wrote:
When trying to merge stable to default I see the following error from
hg:

$ hg merge stable
abort: path contains illegal component: /OctJavaQry.class

Any clues? Rik added the binary file OctJavaQry.class to the hg
archive, but I have no clue how that could cause the error above.

jwe

[snip]

Perhaps Mercurial believes

store/fncache:data/build-aux/OctJavaQry.java.i

is illegal because it should be

store/fncache:data/build-aux/_oct_java_qry.java.i

inside of "store/fncache".

If this is the case, how this came about, I can only guess. Perhaps this
is a Windows/others issue because of DOS ignoring case or something?
Maybe the Mercurial settings on Rik's machine are different than yours?
(guessing!) Might there be a command line switch controlling how upper
case letters are treated in the database?

I doubt that theory. Looking through fncache, I see plenty of file names with upper case letters intact.

How about the following link?  Here seems like a clue:

http://permalink.gmane.org/gmane.comp.version-control.mercurial.general/31328

If I understand correctly, the data/build-aux of

data/build-aux/OctJavaQry.class.i

is being stripped in the merge process and creating /OctJavaQry.class.i. (Note the link in that post to a line of code in Mercurial that does this.)

However, in the link above it explains that this is due to movement of the file in the tree somehow. That doesn't seem to be the scenario here. I do notice something unique and peculiar about OctJavaQry.class which only has a couple associated change logs in the "default" branch.

http://hg.savannah.gnu.org/hgweb/octave/log/450e4e60d2c9/build-aux/OctJavaQry.class

[As an aside, I sure wish Mercurial interactive interface had just a tad more convenient info. For example, follow into one of the branches and there is no indication anywhere what the branch is. Just have to have a good memory I guess after going a few directories deep. Also, the graph mode has color-coded branch indications with little dots for the where the associated changeset belongs. However, there is no key for what color belongs to what branch. Maybe I'm missing something.]

Anyway, here is the file log for the entry you are having problems with:

http://hg.savannah.gnu.org/hgweb/octave/log/450e4e60d2c9/build-aux/OctJavaQry.class

If one follows either of those changesets, he'll find that there is no particular entry for OctJavaQry.class like there is for /build-aux/OctJavaQry.java. Because OctJavaQry.class is binary, it's as though it is treated as a Git sub-repository.

http://hg.savannah.gnu.org/hgweb/octave/rev/56239ff815a3

Same here:

http://hg.savannah.gnu.org/hgweb/octave/rev/fafd51a1b0f0

I don't get it. How is Mercurial keeping a record of OctJavaQry.class? Does Mercurial not like the idea of merging a repository? Bug?

Dan


reply via email to

[Prev in Thread] Current Thread [Next in Thread]