Ярлыки

.htaccess (4) тестирование (8) шаблоны проектирования (3) css (5) Debian (6) docker (2) Doctrine2 (6) Git (6) html (4) java (6) javascript (13) jquery (11) LFS (3) linux (23) mac os (4) mod_rewrite (2) MSSQL (4) MySQL (18) ORM Doctrine (17) patterns (3) PDO (3) perl (7) PHP (64) PHPUnit (8) Python (15) SEO (2) Silex (1) SimpleXML (1) SQL (14) ssh (4) Ubuntu (24) Yii1 (1) Zend Framework (19) ZendFramework2 (8)

четверг, 2 февраля 2012 г.

Git. Установка и настройка репозитория для веб-сайта.

Установка git на debian, ubuntu:
$ sudo apt-get install git-core

Если хотим, чтобы каталоги или файлы были исключены из репозитория, надо создать файл .gitignore в каталоге сайта:
$ touch .gitignore
$ cat .gitignore >> images/
$ cat .gitignore >> robots.txt

Создаем репозиторий на локальной машине. Для этого заходим в каталог сайта:
$ git init
Initialized empty Git repository in /var/www/mysite
$ git commit -a -m "my first commit"

Доступ будет по ssh. На сервере в корне сайта создаем каталог и пустой репозиторий:
$ mkdir mysite.git && cd mysite.git
$ git init --bare
Initialized empty Git repository in /var/www/mysite/mysite.git/

Далее на сервере указываем действие, которое будет совершаться после коммита. Для этого в скрипт post-recieve добавляем переменную, которая указывает на каталог, в который будут распаковываться файлы. Ставим права на исполнение:
$ cat > hooks/post-receive
#!/bin/sh
GIT_WORK_TREE=/var/www/mysite git checkout -f
$ chmod +x hooks/post-receive

На локальной машине выгружаем репозиторий на сервер:
$ git remote add origin user@mysite:/var/www/mysite/mysite.git
$ git push origin master
user@mysite's password: 
Counting objects: 6735, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6512/6512), done.
Writing objects: 100% (6735/6735), 22.22 MiB | 191 KiB/s, done.
Total 6735 (delta 2614), reused 0 (delta 0)
To user@mysite:/var/www/mysite
 * [new branch]      master -> master

Комментариев нет:

Отправить комментарий