diff --git a/mercurial/commit.py b/mercurial/commit.py --- a/mercurial/commit.py +++ b/mercurial/commit.py @@ -389,6 +389,7 @@ text = fctx.data() if ( fparent2 != repo.nullid + or fparent1 == repo.nullid or meta or flog.cmp(fparent1, text) or force_new_node diff --git a/tests/test-narrow-commit.t b/tests/test-narrow-commit.t --- a/tests/test-narrow-commit.t +++ b/tests/test-narrow-commit.t @@ -105,14 +105,7 @@ $ hg debugdirstate --no-dates n 644 10 set inside/f1 -Can't commit empty files +Can commit empty files $ touch inside/c; hg add inside/c; hg commit -qm _; hg verify -q - warning: revlog 'data/inside/c.i' not in fncache! - 4: empty or missing inside/c - inside/c@4: manifest refers to unknown revision 000000000000 - 1 warnings encountered! - hint: run "hg debugrebuildfncache" to recover from corrupt fncache - 2 integrity errors encountered! - (first damaged changeset appears to be 4) - [1] + $ hg cat -r . inside/c