Настройка git сервера на debian ubuntu

Дата публикации: 02 10 2014 Автор: PazitiFF
Сегодня поделюсь своим опытом создания своего git сервера. Статья будет дополняться и исправляться, так что очень прошу высказывать все свои комментарии и критику на эту тему. Для начала нам необходим работающий сервер на debian или ubuntu с доступом по ssh. Создадим на сервере пользователя git и каталог для будущих git репозиториев:
adduser git
su git
cd
mkdir .ssh
mkdir ~/git
git init --bare --share ~/git/exampleproject.git
Далле нужно инициализировать git в своём проекте на локальном компьютере, для чего идём в проект и выполняем команды:
ssh-copy-id -i ~/.ssh/id_rsa.pub git@yougitserver
cd /path/to/exampleproject
git init
git add .
git commit -m "first commit"
git remote add origin git@gitservername:~/git/exampleproject.git
git push origin master
Теперь, когда нам понадобится развернуть проект на хостинге или в каком то другом месте, можно воспользоваться командой git clone. Для этого зайдём в нужную директорию и выполним следующее
git clone git@yougitserver:~/git/exampleproject.git exampleproject
cd exampleproject
Делаем нужные нам изменения, коммитим файл и отправляем обратно в репозиторий
git commit -am 'fix file readme.txt'
git push origin master
Если нужно удалить созданную ветку:
git remote rm origin

Комментарии

Вроде можно ещё сделать секьюрную оболочку для гит пользователя?

Было бы замечательно, если бы инструкция была бы поразвернутей. Половину вообще не понял.

А что именно не понятно? Описание комманд есть в документации по git, у меня лишь заметка о том как с помощью данный комманд поднять свой git репозиторий

И все же, может создадите мануал step-by-step по установке ubuntu-server и git при статичном IP у роутера?

Хорошая идея, будет свободное время - обязательно напишу.

Спасибо, все работает.

Добавить комментарий

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Вы можете использовать подсветку исходного кода следующими тегами: <code>, <blockcode>, <apache>, <bash>, <css>, <drupal6>, <html5>, <javascript>, <mysql>, <php>.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.