~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/commands.py

  • Committer: Martin Pool
  • Date: 2005-05-10 06:07:16 UTC
  • Revision ID: mbp@sourcefrog.net-20050510060716-0f939ce3ddea5d15
- New command update-stat-cache for testing
- work-cache always stored with unix newlines and in ascii

Show diffs side-by-side

added added

removed removed

Lines of Context:
453
453
        show_diff(Branch('.'), revision, file_list)
454
454
 
455
455
 
456
 
        
457
 
 
458
 
 
459
456
class cmd_deleted(Command):
460
457
    """List files deleted in the working tree.
461
458
 
478
475
                else:
479
476
                    print path
480
477
 
481
 
 
482
 
class cmd_modified(Command):
483
 
    """List files modified in working tree."""
484
 
    hidden = True
485
 
    def run(self):
486
 
        import statcache
487
 
        b = Branch('.')
488
 
        inv = b.read_working_inventory()
489
 
        sc = statcache.update_cache(b, inv)
490
 
        basis = b.basis_tree()
491
 
        basis_inv = basis.inventory
492
 
        
493
 
        # We used to do this through iter_entries(), but that's slow
494
 
        # when most of the files are unmodified, as is usually the
495
 
        # case.  So instead we iterate by inventory entry, and only
496
 
        # calculate paths as necessary.
497
 
 
498
 
        for file_id in basis_inv:
499
 
            cacheentry = sc.get(file_id)
500
 
            if not cacheentry:                 # deleted
501
 
                continue
502
 
            ie = basis_inv[file_id]
503
 
            if cacheentry[statcache.SC_SHA1] != ie.text_sha1:
504
 
                path = inv.id2path(file_id)
505
 
                print path
506
 
 
507
 
 
508
 
 
509
 
class cmd_added(Command):
510
 
    """List files added in working tree."""
511
 
    hidden = True
512
 
    def run(self):
513
 
        b = Branch('.')
514
 
        wt = b.working_tree()
515
 
        basis_inv = b.basis_tree().inventory
516
 
        inv = wt.inventory
517
 
        for file_id in inv:
518
 
            if file_id in basis_inv:
519
 
                continue
520
 
            path = inv.id2path(file_id)
521
 
            if not os.access(b.abspath(path), os.F_OK):
522
 
                continue
523
 
            print path
524
 
                
525
 
        
526
 
 
527
478
class cmd_root(Command):
528
479
    """Show the tree root directory.
529
480
 
855
806
    def run(self):
856
807
        import statcache
857
808
        b = Branch('.')
858
 
        statcache.update_cache(b)
 
809
        inv = b.read_working_inventory()
 
810
        statcache.update_cache(b, inv)
859
811
 
860
812
 
861
813
######################################################################