我们在内部网络上有一台Gitorious服务器。当我使用web界面创建一个repo时,请说myproject / myrepo.git,Gitorious指示我进入我的源代码文件夹,然后:
git init . git add . git commit -m "first timer" git remote add origin git@myservername:myproject/myrepo.git git push -u origin master
当我这样做时,它错误告诉我,
"fatal: 'myproject/myrepo.git' does not appear to be a git repository" "fatal: The remote end hung up unexpectedly"
我可以通过输入完整路径名来解决这个问题
git remote rm origin git remote add origin git@myservername:/opt/gitorious-3.1.1-1/apps/gitorious/repositories/myproject/myrepo.git
但我宁愿不必这样做。似乎某些地方应该知道在哪里指向git协议,以及apache服务器如何知道在htdoc文件夹中查找文档等等。我觉得这不是git或gitorious的问题,而是软件堆栈中的东西。
我的问题是如何解决这个问题?这个设置在哪里?我应该在google中搜索的主题是什么?
答案 0 :(得分:0)
你在和存储库一样在同一台机器上工作吗?
如果你这样做有意义,我认为你没有开始任何 git deamon
如果您没有使用同一台服务器,请在此处关注 those instructions 吗?
答案 1 :(得分:0)
我明白了。我最终不得不重新生成我的SSH密钥。我在/.ssh中没有任何键,但我从来没有注意到这一点,因为它只是要求我的密码,我会输入它,一切都会好的。我使用ssh-keygen -t rsa -C "myname@myserver.com"
在git中生成了另一个ssh密钥,将其添加到gitorious中,并再次尝试并且它不起作用。然后我尝试ssh -v git@myserver
,它似乎没有尝试或者可能看到我的custom_name键。然后,我使用默认名称id_rsa生成另一个密钥,并再次尝试ssh-v,它似乎工作。然后我尝试了 git clone git@myserver:myproject\myrepo.git
,一切都顺利完成。
奇怪的是,现在我不能再从git bash提示符进入我的服务器了;服务器响应:
PTY allocation request failed on channel 0 Welcome myname. Use git to push/pull your repositories Connection closed