我需要创建一个名为carboncake的回购程序。
我试过这个:
将gitosis存储库克隆到我的本地机器上。
$ git clone gitosis@myserver.net:repositories/gitosis-admin.git
$ cd gitosis-admin
$ vim gitosis.conf将[repo carboncake]和[group carboncake]部分添加到文件末尾
[gitosis]
[group team]
writable = sweepshots
members = git_id_rsa
[group gitosis-admin]
writable = gitosis-admin
members = git_id_rsa
[repo carboncake]
description = A brand new app by Mithun.
owner = Mithun P
[group carboncake]
writable = myappname
members = mithun @core然后复制Putty生成的pub密钥文件(我正在使用Git basg for Windows):
$cp /some/where/mithun.pub keydir/mithun.pub
执行下列命令:
$ git add gitosis.conf keydir/mithun.pub
$ git commit -m "Added 'carboncake' repository and 'mithun' user."
$ git pull --rebase
$ git push但是它并没有在我的服务器上创建任何carboncake.git。
,所以我跟踪了这个:
在服务器上执行以下命令:
$ su gitosis
$ git init --bare /srv/gitosis/repositories/carboncake.git,这是我的问题:
我试着从本地机器上签出/克隆新的存储库。
$ mkdir carboncake
$ cd carboncake
$ git init
$ touch a_text_file.txt
$ git add a_text_file.txt
$ git remote add origin gitosis@myserver.net:repositories/carboncake.git
$ git push origin master它返回了错误:
error: src refspec master does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'当我尝试git push origin HEAD:master时,它返回了错误:
error: src refspec HEAD does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'当我尝试git push origin master:refs/heads/master时,它返回了错误:
error: src refspec master does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'本地机器上的git show-ref不显示任何内容。
服务器上的/srv/gitosis/repositories/carboncake.git/refs/heads/目录也是空的。
我怎么才能解决这个问题?
发布于 2011-04-27 10:18:43
您已经创建了一个新的存储库,并将一些文件添加到索引中,但还没有创建第一个提交。在你做完之后:
git add a_text_file.txt ..。做:
git commit -m "Initial commit."..。这些错误应该消失。
发布于 2011-04-28 06:43:01
快速可能的答案是:当您第一次成功克隆一个空的git存储库时,原点没有主分支。因此,当你第一次承诺要推动的时候,你必须做:
git push origin master这将为你创建这个新的主分支。像这样的小东西和git是非常混淆的。
如果这没有解决你的问题,那么它可能是一个与海泡石相关的问题:
你的文件看起来很奇怪。应该有一个例子的conf文件,随你的珍珠岩。我的看起来是这样的:
repo phonegap
RW+ = myusername otherusername
repo gitolite-admin
RW+ = myusername 请确保您的conf文件设置正确。
实际上,Gitolite用一个不接受交互式终端会话的修改shell替换了gitolite用户的帐户。您可以通过尝试使用gitolite用户帐户将ssh插入到您的框中来查看gitolite是否在工作。如果它知道您是谁,它会说类似于"Hi XYZ,您可以访问以下存储库: X,Y,Z“,然后关闭连接。如果它不认识你,它就会关闭连接。
最后,在本地计算机上第一次git推送失败后,您不应该求助于在服务器上手动创建回购。我们需要知道为什么你的推送一开始就失败了。你可以让你自己和海泡石更混乱,当你不完全使用海泡石时,一旦你设置了它。
https://stackoverflow.com/questions/5802426
复制相似问题