Mercurial > hg
view tests/test-convert-p4.out @ 13155:f02d7a562a21
subrepo: avoids empty commit when .hgsubstate is dirty (issue2403)
This patch avoids empty commit when .hgsubstate is dirty. Empty commit
was caused by .hgsubstate being updated back to the state of the
working copy parent when committing, if a user had changed it manually
and not made any changes in subrepositories.
The subrepository state from the working copies parent is compared
with the state calculated as a result of trying to commit the
subrepositories. If the two states are the same, then return None
otherwise the commit is just done.
The line: "committing subrepository x" will be written if there is
nothing committed, but .hgsubstate is dirty for x subrepository.
author | Erik Zielke <ez@aragost.com> |
---|---|
date | Mon, 29 Nov 2010 09:37:23 +0100 |
parents | ee8d9b93b316 |
children |
line wrap: on
line source
% create p4 depot % start the p4 server % create a client spec Client hg-p4-import saved. % populate the depot //depot/test-mercurial-import/a#1 - opened for add //depot/test-mercurial-import/b/c#1 - opened for add Submitting change 1. Locking 2 files ... add //depot/test-mercurial-import/a#1 add //depot/test-mercurial-import/b/c#1 Change 1 submitted. % change some files //depot/test-mercurial-import/a#1 - opened for edit Submitting change 2. Locking 1 files ... edit //depot/test-mercurial-import/a#2 Change 2 submitted. //depot/test-mercurial-import/b/c#1 - opened for edit Submitting change 3. Locking 1 files ... edit //depot/test-mercurial-import/b/c#2 Change 3 submitted. % convert initializing destination dst repository reading p4 views collecting p4 changelists 1 initial 2 change a 3 change b/c scanning source... sorting... converting... 2 initial 1 change a 0 change b/c rev=2 desc="change b/c" tags="tip" files="b/c" rev=1 desc="change a" tags="" files="a" rev=0 desc="initial" tags="" files="a b/c" % change some files //depot/test-mercurial-import/a#2 - opened for edit //depot/test-mercurial-import/b/c#2 - opened for edit Submitting change 4. Locking 2 files ... edit //depot/test-mercurial-import/a#3 edit //depot/test-mercurial-import/b/c#3 Change 4 submitted. % convert again reading p4 views collecting p4 changelists 1 initial 2 change a 3 change b/c 4 change a b/c scanning source... sorting... converting... 0 change a b/c rev=3 desc="change a b/c" tags="tip" files="a b/c" rev=2 desc="change b/c" tags="" files="b/c" rev=1 desc="change a" tags="" files="a" rev=0 desc="initial" tags="" files="a b/c" % interesting names //depot/test-mercurial-import/d d#1 - opened for add //depot/test-mercurial-import/ e/ f#1 - opened for add Submitting change 5. Locking 2 files ... add //depot/test-mercurial-import/ e/ f#1 add //depot/test-mercurial-import/d d#1 Change 5 submitted. % convert again reading p4 views collecting p4 changelists 1 initial 2 change a 3 change b/c 4 change a b/c 5 add d e f scanning source... sorting... converting... 0 add d e f rev=4 desc="add d e f" tags="tip" files=" e/ f d d" rev=3 desc="change a b/c" tags="" files="a b/c" rev=2 desc="change b/c" tags="" files="b/c" rev=1 desc="change a" tags="" files="a" rev=0 desc="initial" tags="" files="a b/c" % stop the p4 server