cvsserver: imitate git-update-ref when committing
git-update-ref writes into the lockfile, and renames it afterwards. Like commit v1.3.0-rc3~22, it is not only cleaner, but also helps with shared setups: every developer can have a different primary group; what matters is that $GIT_DIR/refs/heads has to be writable by a group you are in. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
5209eda863
commit
cadbcf2712
@ -1142,9 +1142,7 @@ sub req_ci
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
open FILE, ">", "$ENV{GIT_DIR}refs/heads/$state->{module}";
|
print LOCKFILE $commithash;
|
||||||
print FILE $commithash;
|
|
||||||
close FILE;
|
|
||||||
|
|
||||||
$updater->update();
|
$updater->update();
|
||||||
|
|
||||||
@ -1171,7 +1169,9 @@ sub req_ci
|
|||||||
}
|
}
|
||||||
|
|
||||||
close LOCKFILE;
|
close LOCKFILE;
|
||||||
unlink($lockfile);
|
my $reffile = "$ENV{GIT_DIR}refs/heads/$state->{module}";
|
||||||
|
unlink($reffile);
|
||||||
|
rename($lockfile, $reffile);
|
||||||
chdir "/";
|
chdir "/";
|
||||||
|
|
||||||
print "ok\n";
|
print "ok\n";
|
||||||
|
Loading…
Reference in New Issue
Block a user