Gitolite在本地使用gitolite用户创建存储库

时间:2014-08-27 07:38:20

标签: git ssh local gitolite

我想使用本地帐户在我的gitolite服务器上创建一个新的存储库,而无需通过SSH访问。这可能吗?它们是我可以使用的一些gitolite脚本吗?

如果我尝试通过我的系统上的git用户配置gitolite,方法是查看gitolite-admin repo并相应地进行配置。但我无法推动我的更改,因为挂钩会崩溃,因为我没有通过SSH登录。

为什么我要这样做?我想通过Chef设置gitolite并创建一个新的repo。但我不想为Chef脚本提供私钥。

修改

对于每个想要使用厨师设置gitolite的人。有一个bug禁止天真地使用bash资源,所以你必须明确指定一些环境数据,因为gitolite使用它们:

bash "gitolite push" do
  cwd "/home/git/gitolite-admin"
  user "git"
  group "git"
  environment ({ 'HOME' => ::Dir.home('git'), 'USER' => 'git' })
  code "../bin/gitolite push"
end

1 个答案:

答案 0 :(得分:2)

如果您使用的是gitolite服务器,一个简单的解决方案是:

  • 直接克隆裸管理员仓库

    cd ~
    git clone repositories/gitolite-admin.git
    cd gitolite-admin/conf
    // Declare a new repo in gitolite.conf
    git add
    git commit -m "New repo"
     ~/bin/gitolite push
    

gitolite push is documented here

  

如果你真的必须这样做,这是一次性的事情,你可以尝试gitolite push而不是git push
  但是......这会破坏所有的gitolite访问控制,所以如果你经常这样做,也许你不需要gitolite!