Skip to content

Commit

Permalink
archimport: allow for old style branch and public tag names
Browse files Browse the repository at this point in the history
This patch adds the -o switch, which lets old trees tracked by
git-archmirror continue working with their old branch and tag names
to make life easier for people tracking your tree.

Private tags that are only used internally by git-archimport continue to be
new-style, and automatically converted upon first run.

[ ml: rebased to skip import overhaul ]

Signed-off-by:: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
  • Loading branch information
Martin Langhoff committed Nov 17, 2005
1 parent 22ff00f commit fee3365
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions git-archimport.perl
Original file line number Diff line number Diff line change
Expand Up @@ -72,13 +72,12 @@ =head1 Devel Notes
$ENV{"GIT_DIR"} = $git_dir;
my $ptag_dir = "$git_dir/archimport/tags";

our($opt_h,$opt_v, $opt_T,
$opt_C,$opt_t);
our($opt_h,$opt_v, $opt_T,$opt_t,$opt_o);

sub usage() {
print STDERR <<END;
Usage: ${\basename $0} # fetch/update GIT from Arch
[ -h ] [ -v ] [ -T ] [ -t tempdir ]
[ -o ] [ -h ] [ -v ] [ -T ] [ -t tempdir ]
repository/arch-branch [ repository/arch-branch] ...
END
exit(1);
Expand Down Expand Up @@ -263,7 +262,15 @@ sub tree_dirname {
return $name;
}

*git_branchname = *tree_dirname;
# old versions of git-archimport just use the <category--branch> part:
sub old_style_branchname {
my $id = shift;
my $ret = safe_pipe_capture($TLA,'parse-package-name','-p',$id);
chomp $ret;
return $ret;
}

*git_branchname = $opt_o ? *old_style_branchname : *tree_dirname;

# process patchsets
foreach my $ps (@psets) {
Expand Down Expand Up @@ -629,8 +636,12 @@ sub parselog {
sub tag {
my ($tag, $commit) = @_;

# don't use subdirs for tags yet, it could screw up other porcelains
$tag =~ s|/|,|;
if ($opt_o) {
$tag =~ s|/|--|g;
} else {
# don't use subdirs for tags yet, it could screw up other porcelains
$tag =~ s|/|,|g;
}

if ($commit) {
open(C,">","$git_dir/refs/tags/$tag")
Expand Down

0 comments on commit fee3365

Please sign in to comment.