##// END OF EJS Templates
largefiles: fix an explicit largefile commit after a remove (issue4969)...
Matt Harbison -
r27942:eb1135d5 stable
parent child Browse files
Show More
@@ -575,11 +575,15 b' def updatestandinsbymatch(repo, match):'
575 575 fstandin = standin(f)
576 576
577 577 # For largefiles, only one of the normal and standin should be
578 # committed (except if one of them is a remove).
578 # committed (except if one of them is a remove). In the case of a
579 # standin removal, drop the normal file if it is unknown to dirstate.
579 580 # Thus, skip plain largefile names but keep the standin.
580 if (f in lfiles or fstandin in standins) and \
581 repo.dirstate[f] != 'r' and repo.dirstate[fstandin] != 'r':
582 continue
581 if f in lfiles or fstandin in standins:
582 if repo.dirstate[fstandin] != 'r':
583 if repo.dirstate[f] != 'r':
584 continue
585 elif repo.dirstate[f] == '?':
586 continue
583 587
584 588 actualfiles.append(f)
585 589 match._files = actualfiles
@@ -17,7 +17,7 b' Create source repo, and commit adding la'
17 17 $ hg add --large large
18 18 $ hg commit -m 'add largefile'
19 19 $ hg rm large
20 $ hg commit -m 'branchhead without largefile'
20 $ hg commit -m 'branchhead without largefile' large
21 21 $ hg up -qr 0
22 22 $ cd ..
23 23
General Comments 0
You need to be logged in to leave comments. Login now