[Bug 4496] New: Provide an option to prevent rewriting sha ids in the history
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Thu Jan 8 20:51:36 UTC 2015
http://bz.selenic.com/show_bug.cgi?id=4496
Priority: normal
Bug ID: 4496
CC: mercurial-devel at selenic.com
Assignee: bugzilla at selenic.com
Summary: Provide an option to prevent rewriting sha ids in the
history
Severity: bug
Classification: Unclassified
OS: Linux
Reporter: Pidgeot18 at gmail.com
Hardware: PC
Status: UNCONFIRMED
Version: unspecified
Component: convert
Product: Mercurial
When I was attempting to do a conversion of an hg repository into another, I
got the following error message:
$ hg convert --splicemap convert-rev.txt /tmp/scratch/ /tmp/scratch2
scanning source...
sorting...
converting...
36725 fix problems unignoring threads, r=sspitzer,sr=mscott,a=sspitzer 6df1d7
abort: 00changelog.i at 6df1d7: ambiguous identifier!
After doing a lot more research, what ends up happening is this:
In the original repository (actually a conversion of CVS to hg), the commit
message looks like this: "fix problems unignoring threads,
r=sspitzer,sr=mscott, a=sspitzer 121164". The number at the end is a bug
number, and there are several 6-digit bug numbers in the repository in
question. However, the 6-digit bug number matches the regex as a valid sha1
identifier. There happens to be a revision whose sha starts with 121164, so it
gets rewritten using the short 6-digit identifier. I later pulled an unrelated
repository (to graft history together), which added more revisions with the
same 6df1d7 prefix, which causes the abort.
Quite frankly, I don't want the conversion process to confuse the 6-digit bug
numbers with revision IDs and rewrite them, since that destroys a lot of useful
data. I was surprised to find that there's not even a hidden option to disable
the description rewriting.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list