2015-02-05 10 views
0

У нас есть Gitorious сервер во внутренней сети. Когда я создаю репозиторий с помощью веб-интерфейса на говорят MyProject/myrepo.git, Gitorious инструктирует меня, чтобы войти в мою папку исходного кода, а затем:Нажатие Git repo на Gitorious заставляет меня вводить полное имя пути

git init . 
git add . 
git commit -m "first timer" 
git remote add origin [email protected]: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 [email protected]:/opt/gitorious-3.1.1-1/apps/gitorious/repositories/myproject/myrepo.git

, но я бы предпочел не делать этого. Кажется, что-то где-то должно знать, где указать протокол git, в соответствии с тем, как сервер Apache знает, чтобы найти документы в папке htdoc или что-то в этом роде. У меня такое чувство, что это не проблема с git или gitorious, но с чем-то более низким в стеке программного обеспечения.

Мой вопрос: как исправить это? Где бы эта настройка была? Какую тему я должен искать в Google?

+0

Так что я провел некоторое дальнейшее расследование. Вышеприведенная информация основана на наблюдениях при использовании машины Ubunto. У меня есть машина Windows, которая испытывает такую ​​же проблему, но у нас есть несколько машин, которые не страдают этой проблемой. То есть, git clone git @ myserver: myproj/myrepo.git работает для моего компьютера окон окон, но не для моей машины Windows (или моей машины ubunto) – Jotorious

ответ

0

Вы работаете на той же машине, что и в вашем репозитории? Если это имеет смысл, и я предполагаю, что вы не начали какой-либо git deamon

Если вы не используете один и тот же сервер, у вас следовало those instructions здесь?

+0

Я не пользуюсь той же машиной. Я не настроил отличный сервер, но я просто просмотрел эти инструкции, и они, похоже, не указали путь – Jotorious

+0

. Читайте этот раздел «Установка без прямого доступа в Интернет». ожидается, что репозитории git будут найдены в разделе «/ var/www/gitorious/app», который отличается от того, который вы опубликовали здесь. – CodeWizard

+0

Когда я использую великолепный веб-интерфейс, он помещает репозитории в /opt/gitorious-3.1.1-1/apps/gitorious/repositories. Если git знает, что нужно искать в указанном вами каталоге, как я могу сказать, что он захочет разместить там репозитории? – Jotorious

0

Я понял. В итоге мне пришлось восстановить свой SSH-ключ. У меня не было никаких ключей в /.ssh, но я никогда не замечал этого, потому что он просто запрашивал мой пароль, и я бы ввел его, и все будет хорошо. Я сгенерировал еще один ключ ssh в git, используя ssh-keygen -t rsa -C "[email protected]", добавив его в gitorious и снова попытался, и он не сработал. Затем я попробовал ssh -v [email protected], и выяснилось, что он не пробовал или не видел мой ключ custom_name. Затем я сгенерировал другой ключ, используя имя id_rsa по умолчанию и снова попробовал ssh-v, и он, похоже, работал. Затем я попробовал git clone [email protected]:myproject\myrepo.git, и все прошло без сучка и задоринки.

Любопытно, что теперь я больше не могу ssh на свой сервер из приглашения git bash; сервер отвечает:

PTY allocation request failed on channel 0 
Welcome myname. Use git to push/pull your repositories 
Connection closed