# [PATCH] svn: fix path strip for branches

2 messages from 2025-10-31 to 2025-11-06. Participants: Pavel Dydyshko via GitGitGadget, Eric Wong.
Thread: https://gitlist.dev/t/64410

## Pavel Dydyshko via GitGitGadget, 2025-10-31 13:26

Subject: [PATCH] svn: fix path strip for branches
Message-ID: <pull.2087.git.git.1761917181558.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/pull.2087.git.git.1761917181558.gitgitgadget%40gmail.com

```
From: Pavel Dydyshka <paul.dydyshko@gmail.com>

When checking path against ignore-include regexps $path argument is
given relatively to svn repo root. This results in unwanted prefix which
is path to svn branch location and should be stripped before testing
path against ignore-include regexps

Signed-off-by: Pavel Dydyshka <paul.dydyshko@gmail.com>
---
    svn: fix path strip for branches

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2087%2Fpddshk%2Fsvn-fix-strip-path-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2087/pddshk/svn-fix-strip-path-v1
Pull-Request: https://github.com/git/git/pull/2087

 perl/Git/SVN/Fetcher.pm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/perl/Git/SVN/Fetcher.pm b/perl/Git/SVN/Fetcher.pm
index 968309e6d6..5ac8c71a3d 100644
--- a/perl/Git/SVN/Fetcher.pm
+++ b/perl/Git/SVN/Fetcher.pm
@@ -123,6 +123,10 @@ sub in_dot_git {
 # This will also check whether the path is explicitly included
 sub is_path_ignored {
 	my ($self, $path) = @_;
+	if ($self->{path_strip}) {
+		$path =~ s/$self->{path_strip}//;
+		$path =~ s{^/}{};
+	}
 	return 1 if in_dot_git($path);
 	return 1 if defined($self->{ignore_regex}) &&
 	            $path =~ m!$self->{ignore_regex}!;

base-commit: 419c72cb8ada252b260efc38ff91fe201de7c8c3
-- 
gitgitgadget

```

## Eric Wong, 2025-11-06 19:23

Subject: Re: [PATCH] svn: fix path strip for branches
Message-ID: <20251106192347.M949304@dcvr>
URL: https://gitlist.dev/e/20251106192347.M949304%40dcvr
In-Reply-To: <pull.2087.git.git.1761917181558.gitgitgadget@gmail.com>

```
Pavel Dydyshko via GitGitGadget <gitgitgadget@gmail.com> wrote:
>  perl/Git/SVN/Fetcher.pm | 4 ++++
>  1 file changed, 4 insertions(+)

Can you please include tests for this and your other change
for multi-line support in
<pull.2091.git.git.1761917197824.gitgitgadget@gmail.com>?

It's difficult to do any maintainence or updates on `git svn'
without tests, especially since SVN is far less common nowadays
with few remaining users.  Thanks.

```
