[PATCH] git-svn: make it play nicely with submodules
It's a simple matter of opening the directory specified in the gitfile.
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
---
git-svn.perl | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/git-svn.perl b/git-svn.perl
index 6aa156c..8642783 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -337,6 +337,10 @@ for (my $i = 0; $i < @ARGV; $i++) {
# make sure we're always running at the top-level working directory
if ($cmd && $cmd =~ /(?:clone|init|multi-init)$/) {
$ENV{GIT_DIR} ||= ".git";
+ # catch the submodule case
+ if (open(my $fh, '<', $ENV{GIT_DIR})) {
+ $ENV{GIT_DIR} = $1 if <$fh> =~ /^gitdir: (.+)$/;
+ }
} else {
my ($git_dir, $cdup);
git_cmd_try {
--
2.2.1