управление сайтом на windows с помощью git - PullRequest
3 голосов
/ 08 февраля 2012

У меня есть веб-сайт, работающий на сервере Windows 2008. Я хочу знать, как лучше всего управлять этим сайтом с помощью git. В идеале я хочу автоматизированное развертывание с использованием перехвата после получения или аналогичного.

У меня есть сервер Linux, который я обычно использую в качестве сервера git origin, так что я могу использовать его, если это облегчит задачу. Обычно мой файл после получения выглядит следующим образом:

#!/bin/sh
GIT_WORK_TREE=/var/www/example.com git checkout -f

Очевидно, что это не будет работать как есть в Windows без чего-либо другого.

Мой сервер Windows поддерживает FTP, но я бы хотел использовать что-нибудь более безопасное, если это возможно.

Ответы [ 2 ]

0 голосов
/ 09 февраля 2012

В итоге я использовал эти инструкции для настройки Cygwin + OpenSSH + Git, которая дала мне большую часть пути.

http://www.shannoncornish.com/blog/2009/04/git-server-windows-2008/

В пост-получении мне пришлось удалитьПервая строка #!/bin/sh из-за некоторых проблем с разрешениями, и я добавил символическую ссылку на свой веб-корень из Cygwin следующим образом:

ln -s /cygdrive/c/inetpub/wwwroot /var/www

Таким образом, файл после получения в конечном итоге выглядел очень похоже на ранее, но безпервая строка

GIT_WORK_TREE=/var/www/example.com git checkout -f
0 голосов
/ 09 февраля 2012

Вы можете использовать путь Windows в вашем bash-скрипте (который будет интерпретироваться msysgit в windows).

/C/my/path/...

Здесь вы можете увидеть пример довольно сложного post-checkout хука (не пост-получения, но он может показать, что вы можете сделать в Windows в скрипте bash-хука).

Подробнее в " Объединение Mingw и Git ".

Собственно, Адам Рофер упоминает в комментариях:

Если вы используете обычный общий доступ к Windows, вы можете получить доступ к репозиториям git по следующему синтаксису пути:

//computername/folder/repo.git 

при условии, что папка - это общая папка, доступная для входа в систему с помощью обычного общего доступа к папке Windows Msysgit, кажется, хорошо играет с этим.

...