Changeset 31467


Ignore:
Timestamp:
2012-04-24T14:56:18+02:00 (6 years ago)
Author:
mirko
Message:

[scripts/feeds] include revisions of feeds when listing them

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/scripts/feeds

    r28503 r31467  
    106106                'init'          => "svn checkout '%s' '%s'", 
    107107                'update'        => "svn update", 
    108                 'controldir'    => ".svn"}, 
     108                'controldir'    => ".svn", 
     109                'revision'      => "svn info | grep 'Revision' | cut -d ' ' -f 2 | tr -d '\n'"}, 
    109110        'src-cpy' => { 
    110111                'init'          => "cp -Rf '%s' '%s'", 
    111                 'update'        => ""}, 
     112                'update'        => "", 
     113                'revision'      => "echo -n 'local'"}, 
    112114        'src-link' => { 
    113115                'init'          => "ln -s '%s' '%s'", 
    114                 'update'        => ""}, 
     116                'update'        => "", 
     117                'revision'      => "echo -n 'local'"}, 
    115118        'src-git' => { 
    116                 'init'          => "git clone --depth 1 '%s' '%s'", 
    117                 'init_branch'   => "git clone --depth 1 --branch '%s' '%s' '%s'", 
     119                'init'          => "git clone '%s' '%s'", 
     120                'init_branch'   => "git clone --branch '%s' '%s' '%s'", 
    118121                'update'        => "git pull", 
    119                 'controldir'    => ".git"}, 
     122                'controldir'    => ".git", 
     123                'revision'      => "git show --abbrev-commit HEAD | head -n 1 | cut -d ' ' -f 2 | tr -d '\n'"}, 
    120124        'src-gitsvn' => { 
    121                 'init'          => "git svn clone -r HEAD '%s' '%s'", 
    122                 'update'        => "git svn rebase", 
    123                 'controldir'    => ".git"}, 
     125                'init'  => "git svn clone -r HEAD '%s' '%s'", 
     126                'update'        => "git svn rebase", 
     127                'controldir'    => ".git", 
     128                'revision'      => "git show --abbrev-commit HEAD | head -n 1 | cut -d ' ' -f 2 | tr -d '\n'"}, 
    124129        'src-bzr' => { 
    125130                'init'          => "bzr checkout --lightweight '%s' '%s'", 
     
    250255        my %opts; 
    251256 
    252         getopts('r:sh', \%opts); 
     257        getopts('r:d:sh', \%opts); 
    253258        if ($opts{h}) { 
    254259                usage(); 
     
    257262        if ($opts{s}) { 
    258263                foreach my $feed (@feeds) { 
    259                         printf "\%-32s\tURL: %s\n", $feed->[1], join(", ", @{$feed->[2]}); 
     264                        my $localpath = "./feeds/$feed->[1]"; 
     265                        my $m = $update_method{$feed->[0]}; 
     266                        my $revision; 
     267                        if( !$m->{'revision'} ) { 
     268                                $revision = "X"; 
     269                        } 
     270                        elsif( $m->{'controldir'} && -d "$localpath/$m->{'controldir'}" ) { 
     271                                $revision = `cd '$localpath'; $m->{'revision'}`; 
     272                        } 
     273                        else { 
     274                                $revision = "local"; 
     275                        } 
     276                        if ($opts{d}) { 
     277                                printf "%s%s%s%s%s%s%s\n", $feed->[1], $opts{d}, $feed->[0], $opts{d}, $revision, $opts{d}, join(", ", @{$feed->[2]}); 
     278                        } 
     279                        else { 
     280                                printf "\%-8s \%-8s \%-8s \%s\n", $feed->[1], $feed->[0], $revision, join(", ", @{$feed->[2]}); 
     281                        } 
    260282                } 
    261283                return 0; 
     
    565587 
    566588Commands: 
    567         list [options]: List feeds and their content 
     589        list [options]: List feeds, their content and revisions (if installed) 
    568590        Options: 
    569             -s :           List of feed names and their URL. 
    570             -r <feedname>: List packages of specified feed. 
     591            -s :            List of feed names and their URL. 
     592            -r <feedname>:  List packages of specified feed. 
     593            -d <delimiter>: Use specified delimiter to distinguish rows (default: spaces) 
    571594 
    572595        install [options] <package>: Install a package 
Note: See TracChangeset for help on using the changeset viewer.