使用gitolite创建一个git存储库,并将现有的本地存储库推送到它

时间:2014-11-25 10:26:36

标签: git gitolite

我有一个带有git的本地new-repo文件夹,我想在我的服务器上以gitolite发布。

在我的服务器上,我在管理员中以root身份创建了一个新的git存储库new-repo

[group developers]
writable = old-repo new-repo
members = me@myhost

然后把它弄了,但我收到了这个错误:

Traceback (most recent call last):
  File "/usr/bin/gitosis-serve", line 9, in <module>
    load_entry_point('gitosis==0.2', 'console_scripts', 'gitosis-serve')()
  File "/usr/lib/pymodules/python2.7/gitosis/app.py", line 24, in run
    return app.main()
  File "/usr/lib/pymodules/python2.7/gitosis/app.py", line 38, in main
    self.handle_args(parser, cfg, options, args)
  File "/usr/lib/pymodules/python2.7/gitosis/serve.py", line 196, in handle_args
    command=cmd,
  File "/usr/lib/pymodules/python2.7/gitosis/serve.py", line 154, in serve
    config=cfg,
  File "/usr/lib/pymodules/python2.7/gitosis/gitdaemon.py", line 79, in set_export_ok
    assert ext == '.git'
AssertionError
fatal: Could not read from remote repository.

我的gitolite文件夹中没有添加任何新的repo,我无法推送它。

我做错了什么?

(我仍然使用gitosis,所以也许gitosis现在已经过时了,它不再像gitolite那样有效了吗?)

1 个答案:

答案 0 :(得分:1)

我做的一切都是正确的。

由于该行显示问题:

assert ext == '.git'

几天前,我通过将其重命名为some_repo.git_old

来修改了一个仓库

所以我的文件夹中有一个不以.git

结尾的回购

我重命名了

mv some_repo.git_old some_repo_old.git

现在这些错误消息已经消失。

此外,我必须将-u origin master添加到我的第一个推送消息中:

git remote add origin git@myserver.de:new-repo.git
git push -u origin master