我在 Ubuntu 上安装了最新版本的 gitolite:
我在跑
gitolite setup -pk user2.pub
我得到的错误是:
FATAL: could not symlink /home/git/.gitolite/hooks/common/update to MyRepository.
git/hooks
at /home/git/gitolite/src/lib/Gitolite/Conf/Store.pm line 330
有什么想法吗?
编辑:
好的 - 所以目录
MyRepository.git/hooks
不存在。只有
MyRepository.git/.git/hooks/
gitolite是怎么回事?
最佳答案
store_common()
包括:
# override/propagate gitolite defined hooks for all repos
ln_sf( "$rc{GL_ADMIN_BASE}/hooks/common", "*", "$repo.git/hooks" );
这反过来又会调用
ln_sf()
sub ln_sf {
trace( 3, @_ );
my ( $srcdir, $glob, $dstdir ) = @_;
for my $hook ( glob("$srcdir/$glob") ) {
$hook =~ s/$srcdir\///;
unlink "$dstdir/$hook";
symlink "$srcdir/$hook", "$dstdir/$hook" or croak "could not symlink $srcdir/$hook to $dstdir\n";
}
}
dstdir
这里似乎不完整。应该是 /home/git/repositories/MyRepository.git/hooks
.这可能是因为初始设置不正确。
关于Gitolite - 添加新的公钥 - 无法符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11740081/