diff options
author | Brian Gernhardt <benji@silverinsanity.com> | 2009-02-19 21:08:04 +0300 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2009-02-23 07:30:58 +0300 |
commit | 7d9fd459f1f5064b421837e46fe87118a07f6d6c (patch) | |
tree | ef82d481c491d9cdce66fef2b608c0e46132aa42 /git-svn.perl | |
parent | 2d602e9179c7eb1a31a0abf41283c132e26a61af (diff) |
git-svn: Create leading directories in create-ignore
Since SVN tracks empty directories and git does not, we can not assume
that the directory exists when creating .gitignore files.
Signed-off-by: Brian Gernhardt <benji@silverinsanity.com>
Acked-by: Eric Wong <normalperson@yhbt.net>
Diffstat (limited to 'git-svn.perl')
-rwxr-xr-x | git-svn.perl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/git-svn.perl b/git-svn.perl index cbc5211d58..ef01fb93c2 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -670,7 +670,11 @@ sub cmd_create_ignore { $gs->prop_walk($gs->{path}, $r, sub { my ($gs, $path, $props) = @_; # $path is of the form /path/to/dir/ - my $ignore = '.' . $path . '.gitignore'; + $path = '.' . $path; + # SVN can have attributes on empty directories, + # which git won't track + mkpath([$path]) unless -d $path; + my $ignore = $path . '.gitignore'; my $s = $props->{'svn:ignore'} or return; open(GITIGNORE, '>', $ignore) or fatal("Failed to open `$ignore' for writing: $!"); |