Я пытался следовать инструкциям по использованию gitosis для управления моими git проектами. Помимо одной небольшой проблемы, я успешно установил Гитоз .
Проблема возникает, когда я пытаюсь создать свой первый git-проект (после настройки и настройки проекта с помощью gitosis). Я получаю следующую ошибку при отправке в удаленный репозиторий git:
fatal: '/home/git/repositories/idea-generator.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
Это последовательность команд, которые я выполняю для установки gitosis и запуска моего первого проекта от начала до конца. Я запускаю эти команды на одном сервере. На данный момент моя машина разработки является центральным репозиторием git, но в какой-то момент станет автономным сервером, предназначенным для git и некоторых других проектов.
ОС: Ubuntu 10.04
мерзавец: 1.7.0.4
питон: 2.6.5
cd /home/rdn/projects
git clone git://eagain.net/gitosis.git
cd gitosis
sudo python setup.py install
sudo adduser --system --shell /bin/sh --gecos 'git version control' --group --disabled-password --home /home/git git
sudo -H -u git gitosis-init < /home/rdn/.ssh/id_rsa.pub
sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
cd ..
# At this point I can't use the instructed 'git clone git@Frankenstein:gitosis-admin.git' as it complains that "fatal: 'gitosis-admin.git' does not appear to be a git repository"
git clone git@Frankenstein:/home/git/repositories/gitosis-admin.git
cd gitosis-admin
gedit gitosis.conf
# added following entries to ../gitosis-admin/gitosis.conf
# [gitosis]
# loglevel = DEBUG
# repositories = /home/git/repositories
#
# [group gitosis-admin]
# writable = gitosis-admin
# members = rdn@Frankenstein
#
# [group idea-generator]
# writable = idea-generator
# members = rdn@Frankenstein
git commit -a -m "created first repository"
git push
cd ..
rails new idea-generator
cd idea-generator
git init
git remote add main_project git@Frankenstein:/home/git/repositories/idea-generator.git
git add .
git commit -a -m "initial project creation"
git push main_project master:refs/heads/master
Обновление
Единственный способ, которым я смог это исправить, - это войти на удаленный сервер и создать удаленный репозиторий следующим образом:
В качестве пользователя git в хранилище Gitosis создайте удаленный голый проект:
git:~ cd /home/git/repositories
git:~ mkdir idea-generator.git
git:~ cd myapp.git
git:~ git --bare init
Как пользователь коммиттера (в моем случае rdn), зафиксируйте и отправьте только что созданный проект .
rdn:~ cd /home/rdn/projects/idea-generator
rdn:~ git init
rdn:~ git remote add main_project git@Frankenstein:/home/git/repositories/idea-generator.git
rdn:~ git add .
rdn:~ git commit -a -m "initial project creation"
rdn:~ git push main_project master:refs/heads/master
Все учебники и документация, которые я прочитал, оставили этот важный шаг. Возможно, в других дистрибутивах этот шаг не является необходимым, но в моем случае я счел это необходимым. Надеюсь, кто-нибудь сможет ответить на этот начальный вопрос и определить, какие шаги нужно изменить, чтобы исходные учебники работали под Ubuntu 10.04.