mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 07:17:55 +03:00
Revert almost all of 0ab603017f82; add a test
Because of file copies, we should update the manifest dict only after committing all files.
This commit is contained in:
parent
f9f3aa2d91
commit
858dee209b
@ -646,15 +646,14 @@ class localrepository(repo.repository):
|
||||
tr = self.transaction()
|
||||
|
||||
# check in files
|
||||
new = []
|
||||
new = {}
|
||||
linkrev = self.changelog.count()
|
||||
commit.sort()
|
||||
for f in commit:
|
||||
self.ui.note(f + "\n")
|
||||
try:
|
||||
m1[f] = self.filecommit(f, m1, m2, linkrev, tr, changed)
|
||||
new[f] = self.filecommit(f, m1, m2, linkrev, tr, changed)
|
||||
m1.set(f, util.is_exec(self.wjoin(f), m1.execf(f)))
|
||||
new.append(f)
|
||||
except IOError:
|
||||
if use_dirstate:
|
||||
self.ui.warn(_("trouble committing %s!\n") % f)
|
||||
@ -663,6 +662,7 @@ class localrepository(repo.repository):
|
||||
remove.append(f)
|
||||
|
||||
# update manifest
|
||||
m1.update(new)
|
||||
remove.sort()
|
||||
|
||||
for f in remove:
|
||||
@ -671,6 +671,9 @@ class localrepository(repo.repository):
|
||||
mn = self.manifest.add(m1, tr, linkrev, c1[0], c2[0], (new, remove))
|
||||
|
||||
# add changeset
|
||||
new = new.keys()
|
||||
new.sort()
|
||||
|
||||
user = user or self.ui.username()
|
||||
if not text or force_editor:
|
||||
edittext = []
|
||||
|
14
tests/test-commit-copy
Executable file
14
tests/test-commit-copy
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
hg init dir
|
||||
cd dir
|
||||
echo bleh > bar
|
||||
hg add bar
|
||||
hg ci -m 'add bar'
|
||||
|
||||
hg cp bar foo
|
||||
echo >> bar
|
||||
hg ci -m 'cp bar foo; change bar'
|
||||
|
||||
hg debugrename foo
|
||||
hg debugindex .hg/data/bar.i
|
4
tests/test-commit-copy.out
Normal file
4
tests/test-commit-copy.out
Normal file
@ -0,0 +1,4 @@
|
||||
foo renamed from bar:26d3ca0dfd18e44d796b564e38dd173c9668d3a9
|
||||
rev offset length base linkrev nodeid p1 p2
|
||||
0 0 6 0 0 26d3ca0dfd18 000000000000 000000000000
|
||||
1 6 7 1 1 d267bddd54f7 26d3ca0dfd18 000000000000
|
Loading…
Reference in New Issue
Block a user