Сегодня все чаще чтобы откликнуться на вакансию необходимо знакомство с VCS (Система управления версиями). Эта статья - быстрый старт для начинающих.
На сервере должен быть установлен и настроен Git. Создание репозитория на хостинге it-patrol.ru:
- Соединяемся с хостингом по SSH протоколу (к примеру, с помощью программы PuTTY.
- Добавляем пользователя Git в глобальные настройки git (относительно пользователя хостинга).
git config --global user.email "my-email@mail.ru"
git config --global user.name "My UserName"
Далее, непосредственно, инициализация проекта и создание репозитория:
cd ~/domains/my-site.ru # переходим в папку с сайтом
git init # инициализируем находящиеся в ней файлы сайта
git add . # добавляем все файлы, находящиеся в этой папке в текущую версию
git commit -m "First fixation" # создаем первую фиксацию
mkdir ~/git # создадим папку, где будут храниться все репозитории.
git clone --bare ~/domains/my-site.ru ~/git/my-site.ru.git # создаем основной репозиторий
Основной репозиторий нужен для того, чтобы выталкивать туда фиксации разработчиков и откуда можно вытягивать изменения. К примеру у нас есть тестовый сайт, рабочий сайт и группа разработчиков. Тогда работа с этими репозиториями будет выглядеть так:
Так изменения вытягиваются на тестовый сайт и после проверки работоспособности вытягиваются изменения на рабочий сайт.
Теперь сайт у нас инициализирован и репозиторий создан. Можно подключать к нему разработчиков. К примеру, в PhpStorm: Работа с Git в PhpStorm (JetBrains).
UPD: 17.04.14
Добавляем хук, реализующий авто-pull, при коммите разработчика, в тестовый сайт. Предположим, что наш тестовый сайт располагается по адресу: ~/domains/dev.my-site.ru, тогда
cd ~/git/my-site.ru.git/hooks
nano post-update
#!/bin/sh
cd ~/domains/dev.my-site.ru || exit
unset GIT_DIR
git pull origin master
exec git update-server-info