Code

git-svn: Allow deep branch names by supporting multi-globs
authorMarcus Griep <marcus@griep.us>
Fri, 8 Aug 2008 08:41:57 +0000 (01:41 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 8 Aug 2008 23:29:56 +0000 (16:29 -0700)
commit570d35c26dfbc40757da6032cdc96afb58cc0037
treef4214bb8e0404fffde9ae521381d28c4a343adfb
parentb47ddefe02945f8746c642219450245cf83ed130
git-svn: Allow deep branch names by supporting multi-globs

Some repositories use a deep branching strategy, such as:

    branches/1.0/1.0.rc1
    branches/1.0/1.0.rc2
    branches/1.0/1.0.rtm
    branches/1.0/1.0.gold

Only allowing a single glob stiffles this.

This change allows for a single glob 'set' to accept this deep
branching strategy.

The ref glob depth must match the branch glob depth.  When using
the -b or -t options for init or clone, this is automatically
done.

For example, using the above branches:

  svn-remote.svn.branches = branches/*/*:refs/remote/*/*

gives the following branch names:

  1.0/1.0.rc1
  1.0/1.0.rc2
  1.0/1.0.rtm
  1.0/1.0.gold

[ew:
  * removed unrelated line-wrapping changes
  * fixed line-wrapping in a few more places
  * removed trailing whitespace
  * fixed bashism in test
  * removed unnecessary httpd startup in test
  * changed copyright on tests to 2008 Marcus Griep
  * added executable permissions to new tests
]

Signed-off-by: Marcus Griep <marcus@griep.us>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-svn.perl
t/t9108-git-svn-glob.sh
t/t9108-git-svn-multi-glob.sh [new file with mode: 0755]
t/t9125-git-svn-multi-glob-branch-names.sh [new file with mode: 0755]