##// END OF EJS Templates
largefiles: update lfdirstate for unchanged largefiles during linear merging...
FUJIWARA Katsunori -
r22197:f72d7393 default
parent child Browse files
Show More
@@ -443,6 +443,7 b' def updatelfiles(ui, repo, filelist=None'
443 443 lfiles = set(lfutil.listlfiles(repo)) | set(lfdirstate)
444 444
445 445 if filelist is not None:
446 filelist = set(filelist)
446 447 lfiles = [f for f in lfiles if f in filelist]
447 448
448 449 update = {}
@@ -512,6 +513,19 b' def updatelfiles(ui, repo, filelist=None'
512 513
513 514 lfutil.synclfdirstate(repo, lfdirstate, lfile, normallookup)
514 515
516 if filelist is not None:
517 # If "local largefile" is chosen at file merging, it is
518 # not listed in "filelist" (= dirstate syncing is
519 # omitted), because the standin file is not changed before and
520 # after merging.
521 # But the status of such files may have to be changed by
522 # merging. For example, locally modified ("M") largefile
523 # has to become re-added("A"), if it is "normal" file in
524 # the target revision of linear-merging.
525 for lfile in lfdirstate:
526 if lfile not in filelist:
527 lfutil.synclfdirstate(repo, lfdirstate, lfile, True)
528
515 529 lfdirstate.write()
516 530 if printmessage and lfiles:
517 531 ui.status(_('%d largefiles updated, %d removed\n') % (updated,
@@ -247,6 +247,8 b' Test a linear merge to a revision contai'
247 247 $ hg debugdirstate --nodates | grep large2
248 248 a 0 -1 .hglf/large2
249 249 r 0 0 large2
250 $ hg status -A large2
251 A large2
250 252 $ cat large2
251 253 modified large2 for linear merge
252 254
@@ -261,6 +263,8 b' Test a linear merge to a revision contai'
261 263 $ hg debugdirstate --nodates | grep large3
262 264 a 0 -1 .hglf/large3
263 265 r 0 0 large3
266 $ hg status -A large3
267 A large3
264 268 $ cat large3
265 269 large3 as large file for linear merge
266 270
General Comments 0
You need to be logged in to leave comments. Login now