OP skipper3k 在 Git中报告了一个问题RUNTIME_PREFIX
,有点类似于“git pull
损坏”的问题:
我不确定是否RUNTIME_PREFIX
为您定义。但是在 . 中查找时Makefile
,我确实注意到前缀默认为$(HOME)
. 我怀疑这可能是您的问题的原因。
简单的答案是将其放入~/.bashrc
:
export GIT_EXEC_PATH=/opt/local/libexec/git-core
如果您想了解更多关于正在发生的事情,您可能必须使用(或类似的)重新编译 gitport -d upgrade -f git-core
并仔细查看构建日志以查看设置前缀的位置。
顺便说一句,port cat git-core
显示大量使用${prefix}
.
原答案:
首先,您是否获得了最新的 gitolite 版本?
在https://github.com/sitaramc/gitolite/,您需要考虑 ' pu
' 分支。
安装文档就是这个。
GitoliteV3 或“g3”文档:
“安装”包含以下选项:
- 将源保存在任何地方并使用完整路径来运行 gitolite 命令。
- 将源代码保存在任何地方,并将 gitolite 程序符号链接到 $PATH 上的某个目录。
- 将源代码复制到某处并使用该路径运行 gitolite 命令。
您可以通过 3 种不同的方式运行“安装”命令:
# option 1
gitolite/install
# option 2
gitolite/install -ln
# defaults to $HOME/bin, or use a specific directory:
gitolite/install -ln /usr/local/bin
# option 3
gitolite/install -to /usr/local/gitolite/bin
gitolite V2 的旧答案:其次,我更喜欢“来自客户端的方法”方法:
这种方法的优点是它强制您在尝试安装之前解决 ssh pubkey 问题。
如果您有专用的用户 ID,它会最有效,
- 服务器上的一个用于安装 gitolite,
- 一个在客户端上用于管理它。
缺点是管理员用户最终有两个密钥
- 一个用于外壳访问(他开始使用)和
- 一个用于 gitolite 访问(脚本在需要时创建)。
所以我喜欢~/.ssh/config
用两组不同的参数创建一个文件:
host gitolite
user git
hostname server
identityfile ~/.ssh/git
host gitadmin
user git
hostname server
identityfile ~/.ssh/id_rsa (myaccount public key)
gitolite-admin仅对第一个公共 ssh 密钥可见:
C:\HOMEWARE\git>ssh gitolite
hello git, the gitolite version here is v1.5.9-25-ga10287a
the gitolite config gives you the following access:
R W gitolite-admin
@R_ @W_ testing
Connection to server closed.
使用我的帐户:
C:\HOMEWARE\git>ssh gitadmin
hello myaccount, the gitolite version here is v1.5.9-25-ga10287a
the gitolite config gives you the following access:
@R_ @W_ testing
Connection to mccprdgit10 closed.
所以:
C:\HOMEWARE\git>git clone gitolite:gitolite-admin
Cloning into gitolite-admin...
remote: Counting objects: 16, done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 16 (delta 2), reused 0 (delta 0)
Receiving objects: 100% (16/16), done.
Resolving deltas: 100% (2/2), done.