Mercurial > hg-stable
changeset 35456:488634db5928
lfs: fix committing deleted files caused by e0a1b9ee93cd
e0a1b9ee93cd (lfs: add a repo requirement for this extension once an lfs
file is committed) introduced a regression that prevents committing file
deletion. This patch fixes that.
Differential Revision: https://phab.mercurial-scm.org/D1717
author | Jun Wu <quark@fb.com> |
---|---|
date | Mon, 18 Dec 2017 14:37:00 -0800 |
parents | d624c8558c61 |
children | 44fd4cfc6c0a |
files | hgext/lfs/__init__.py tests/test-lfs.t |
diffstat | 2 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/lfs/__init__.py Mon Dec 18 13:15:10 2017 -0500 +++ b/hgext/lfs/__init__.py Mon Dec 18 14:37:00 2017 -0800 @@ -124,7 +124,7 @@ if 'lfs' not in repo.requirements: ctx = repo[kwargs['node']] # TODO: is there a way to just walk the files in the commit? - if any(ctx[f].islfs() for f in ctx.files()): + if any(ctx[f].islfs() for f in ctx.files() if f in ctx): repo.requirements.add('lfs') repo._writerequirements()
--- a/tests/test-lfs.t Mon Dec 18 13:15:10 2017 -0500 +++ b/tests/test-lfs.t Mon Dec 18 14:37:00 2017 -0800 @@ -680,3 +680,12 @@ $ hg -R convert_lfs2 config --debug extensions | grep lfs $TESTTMP/convert_lfs2/.hg/hgrc:*: extensions.lfs= (glob) + +Committing deleted files works: + + $ hg init $TESTTMP/repo-del + $ cd $TESTTMP/repo-del + $ echo 1 > A + $ hg commit -m 'add A' -A A + $ hg rm A + $ hg commit -m 'rm A'