Closed sneakypete81 closed 11 years ago
Works for me too, even when committing in a sub-sub-directory.
--- a/commit-patch Mon Mar 11 19:48:46 2013 -0700
+++ b/commit-patch Mon May 13 14:31:54 2013 +0200
@@ -48,7 +48,7 @@
$vc{remove} = 'cvs rm';
$vc{patcharg} = '-p0';
$vc{lsdiffarg} = [];
- } elsif (-d "$repo/.svn" && $repo eq '.') {
+ } elsif (-d "$repo/.svn") {
$vc{name} = 'svn';
$vc{diff} = 'svn diff -x -u';
$vc{commit} = 'svn commit';
Thanks, all. Fixed in 10d58a70b7.
In svn 1.7, the working copy repository format was changed - there's now a single .svn repository at the top level of the working copy.
Commit-patch is unable to parse the new format, since it requires a .svn repository at the level of the commit:
commit-partial Trying back a dir: ./.., abs:/space/local_scratch/work/trunk Trying back a dir: ./../.., abs:/space/local_scratch/work Trying back a dir: ./../../../.., abs:/space/local_scratch Trying back a dir: ./../../../../.., abs:/space Trying back a dir: ./../../../../../.., abs:/ couldn't find repo at commit-partial line 126.
A quick fix for this:
--- a/commit-patch +++ b/commit-patch @@ -48,7 +48,7 @@ while (!$vc{name}) { $vc{remove} = 'cvs rm'; $vc{patcharg} = '-p0'; $vc{lsdiffarg} = [];
This should work fine with older svn versions too, although it does remove the check for a .svn repository in the current directory.