Какой самый простой способ выполнить команды git в рабочем дереве, если оно отделено от git repo? - PullRequest
0 голосов
/ 22 марта 2012

У меня есть голое репо на:

/home/git/mysite_com.git

При каждом нажатии на этот репо хук после получения выполняет:

GIT_WORK_TREE=/var/www/mysite.com/live/www git checkout -f master

Очевидно, когда я иду к:

cd /var/www/mysite.com/live/www 

и попробуйте любую команду git, она говорит:

fatal: Not a git repository (or any of the parent directories): .git

Я нашел решение:

cd /var/www/mysite.com/live/www 
export GIT_DIR=/home/git/mysite_com.git
export GIT_WORK_TREE=/var/www/mysite.com/live/www

Есть ли более простой способ сделать это?Мне приходится копировать и вставлять эти команды снова и снова, каждый раз, когда мне нужно использовать команды git.

1 Ответ

1 голос
/ 22 марта 2012

Вы можете установить опцию core.worktree в git repo:

$ git config core.worktree /var/www/mysite.com/live/www

, а затем использовать опцию --git-dir в git, когда находитесь в рабочем дереве:

$ git --git-dir=/home/git/mysite_com.git <subcommand>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...