git-svn: add --ignore-paths option for fetching
authorVitaly \"_Vi\" Shukela <public_vi@tut.by>
Sun, 25 Jan 2009 22:21:40 +0000 (00:21 +0200)
committerEric Wong <normalperson@yhbt.net>
Mon, 26 Jan 2009 01:01:47 +0000 (17:01 -0800)
commitedc662f929e1a2be3e350bf362cc9aed95f5250a
tree23d16a056217abfd566c2784614ad0e3e36514c6
parentbf8a40b89eef66bc16902f7ea1a73352b8ba3d18
git-svn: add --ignore-paths option for fetching

This will be useful when somebody want to checkout something partially from
repository with some non-standart layout or exclude some files from it.
Example: repository has structure /module-{a,b,c}/{trunk,branches,tags}/...
Modules are interdependent, and you want it to be single repostory (to commit
to all modules simultaneously and view complete history), but do not want
branches and tags be checked out into working copy.
Other use case is excluding some large blobs.

The quirk for now is that user must specify this option every fetch/rebase;
in other case he may get extra files or "file not found" errors. It may be
will be resolved by adding regular expression to .git/config into
[svn-remote ...] to make it persistent.

Signed-off-by: Vitaly "_Vi" Shukela <public_vi@tut.by>
Acked-by: Eric Wong <normalperson@yhbt.net>
[ew: replaced 4-space indent with tabs]
[ew: prefixed $ignore_regex with an underscore to be consistent
     with other globals in git-svn]
[ew: rearranged functions to minimize diff and removed prototype
     usage to be consistent with the rest of git-svn (and other
     Perl code in git (and they're ugly to me)]
git-svn.perl