short version:
Why would I get permission denied in a working copy with a local
repository?
sh: ./svn-commit.tmp: Permission denied
svn: Commit failed (details follow):
svn: system(' svn-commit.tmp') returned 32256
background:
I recently upgraded to slackware 11 and in so doing my compiled apache
httpd got out of sync with the ssl libs, so I upgraded to httpd 2.2.3
and subversion 1.4.2; compiled from source.
svn seemed to work fine over the network using apache/ssl, and dav
seemed to be working fine with apache/ssl.
It seems the only local user, however, who can check in anything is
root. I've followed all the suggestions in the manual and that I could
find on the web, but I got the same error whether I checked out using
file: or https: (I'm not using svnserve.)
So I back down to httpd 2.0.59 and svn 1.3.2. Same problem.
Here is a test case that repros with either setup.
$ cat do
rm -rf repos tmp
svnadmin create ./repos
mkdir tmp
cd tmp
svn co file:///home/me/junk/repos
cd repos
touch afile
svn add afile
svn ci
$ . do
Checked out revision 0.
A afile
sh: ./svn-commit.tmp: Permission denied
svn: Commit failed (details follow):
svn: system(' svn-commit.tmp') returned 32256
Any debugging suggestions most welcome.
Here's the tail end of 'strace svn ci'
lstat64("/home/me/junk/tmp/repos", {st_mode=S_IFDIR|0755, st_size=96,
...}) = 0
open("/home/me/junk/tmp/repos/.svn/dir-props", O_RDONLY) = -1 ENOENT
(No such file or directory)
stat64("/home/me/junk/tmp/repos/.svn/dir-props", 0xbf89b35c) = -1
ENOENT (No such file or directory)
stat64("/home/me/junk/tmp/repos/.svn/dir-prop-base", 0xbf89b35c) = -1
ENOENT (No such file or directory)
lstat64("/home/me/junk/tmp/repos/afile", {st_mode=S_IFREG|0644,
st_size=0, ...}) = 0
open("/home/me/junk/tmp/repos/.svn/props/afile.svn-work", O_RDONLY)
= -1 ENOENT (No such file or directory)
stat64("/home/me/junk/tmp/repos/.svn/props/afile.svn-work",
0xbf89b28c) = -1 ENOENT (No such file or directory)
stat64("/home/me/junk/tmp/repos/.svn/prop-base/afile.svn-base",
0xbf89b28c) = -1 ENOENT (No such file or directory)
brk(0x80e4000) = 0x80e4000
getcwd("/home/me/junk/tmp/repos", 4096) = 27
chdir("/home/me/junk/tmp/repos") = 0
open("svn-commit.tmp", O_RDWR|O_CREAT|O_EXCL, 0666) = 3
write(3, "\n--This line, and those below, w"..., 62) = 62
close(3) = 0
stat64("svn-commit.tmp", {st_mode=S_IFREG|0644, st_size=62, ...}) = 0
rt_sigaction(SIGINT, {SIG_IGN}, {0x804fd20, [], SA_INTERRUPT}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
clone(sh: ./svn-commit.tmp: Permission denied <<<<<<<<<<<<<<<<<<<<<<<<<
child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD,
parent_tidptr=0xbf89b458) = 6848
waitpid(6848, [{WIFEXITED(s) && WEXITSTATUS(s) == 126}], 0) = 6848
rt_sigaction(SIGINT, {0x804fd20, [], SA_INTERRUPT}, NULL, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
unlink("svn-commit.tmp") = 0
chdir("/home/me/junk/tmp/repos") = 0
unlink("/home/me/junk/tmp/repos/.svn/lock") = 0
write(2, "svn: Commit failed (details foll"..., 37svn: Commit failed
(details follow):
) = 37
write(2, "svn: system(\' svn-commit.tmp\') r"..., 46svn: system('
svn-commit.tmp') returned 32256
) = 46
brk(0x80c4000) = 0x80c4000
exit_group(1) = ?
Process 6847 detached
--
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Nov 15 20:40:51 2006