среда, 3 октября 2012 г.

git через прокси-сервер

Возникла необходимость обновлять moodle через git. Собственно дальше необходимости обновлять дело не сдвинулось, т.к. git упорно отказывался работать через наш прокси-сервер :-(. В результате анализа проблемы (банальное гугление) было найдено решение, например тут и  тут. В этих примерах народ использует такую полезную программку как corkscrew, которая позволяет делать тунель SSH черех HTTP прокси-сервер.
1. Для начала следует установить corkscrew:
sudo apt-get install corkscrew

2. Затем следует создать файл gitproxy.sh с следующим содержимым:

#! /bin/bash
corkscrew proxy port $1 $2


Где, proxy - адрес прокси-сервера а port - порт.

3. Далее следует задать переменную окружения  GIT_PROXY_COMMAND

export GIT_PROXY_COMMAND=/home/user/gitproxy.sh

Где  /home/user/gitproxy.sh это вышеупомянутый скрип

4. После этого можно задать параметры для доступа к git через ssh. Для этого добавим следуюие строчки в файл ~/.ssh/config:

Host *
  ProxyCommand /home/user/gitproxy.sh %h %p


В принципе дальше обновление с git должно пройти нормально

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