Mor*_*agh 5 git ubuntu clone gitolite
我很难解决克隆gitolite-admin存储库的问题.我已经关注了这个http://sitaramc.github.com/gitolite/install.html#migr,它完美无缺.
我跑ssh-keygen -t rsa和scp ~/.ssh/id_rsa.pub morten@ubuntu-server:/tmp/morten.pub
服务器上的authorized_keys看起来像这样:
# gitolite start
command="/home/morten/gitolite/src/gitolite-shell morten",no-port-forwarding,no-X11-forwarding,no-agent-forward$
# gitolite end
Run Code Online (Sandbox Code Playgroud)
哪个AFAIK没问题.
当我git clone morten@ubuntu-server:gitolite-admin在我的客户端上运行时,我得到了
fatal: 'gitolite-admin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
我不知道我错过了什么!
使用morten帐户是完全正常的.
但是,考虑到您当前的~morten/.ssh/authorized_keys内容,您的安装很奇怪:
而不是/home/morten/gitolite/src/gitolite-shell morten|,你应该有/home/morten/gitolite/bin/gitolite-shell morten
这意味着:gitolite-shell应该在你的$PATH,并且它应该在bin目录中,在执行之后创建:
"${github}/install" -to "${gtl}/bin"
Run Code Online (Sandbox Code Playgroud)
(参见" 安装Gitolite " 的"实际安装"部分的选项3 )
有:
github 克隆的路径 https://github.com/sitaramc/gitolitegtl您要安装gitolite的路径(例如,在您的情况下/home/morten/gitolite)于是,更容易保存authorized_keys和.gitolite.rc文件,并重新做初始化过程:
gitolite setup -pk "${HOME}/.ssh/gitoliteadm.pub"
Run Code Online (Sandbox Code Playgroud)
(如果您创建了公钥和私钥,请将其命名为' gitoliteadm',简单地说:
ssh-keygen -t rsa -f "${H}/.ssh/morten" -C "Gitolite Admin access (not interactive)" -q -P ""
Run Code Online (Sandbox Code Playgroud)
)
请注意,我保留'ssh'帐户名(morten)与gitolite服务器帐户(gitoliteadm)的目的不同.
你仍然会克隆git clone morten@ubuntu-server:gitolite-admin(因为所有的ssh文件都在~morten/.ssh),但你会使用私钥/公钥gitoliteadm,这会促使gitolite用一个名为" gitoliteadm" 的gitolite"帐户"来访问它的repo .
这样,如果您更改了gitolite服务器的物理用户帐户,则为"逻辑"帐户gitoliteadm"(指代角色,而不是个人或资源).
| 归档时间: |
|
| 查看次数: |
8331 次 |
| 最近记录: |