З git 1.8.5 (Q4 2013) у вас буде інший вибір, замість налаштування --git-dir.
Якщо ви хочете виконати git logв папці B, введіть:
git -C B log
Так само, як " make -C <directory>", " git -C <directory> ..." каже Git піти туди, перш ніж робити щось інше .
Див здійснювати 44e1e4 по Назрі Ramliy :
Потрібно більше натискань клавіш, щоб викликати команду git в іншому каталозі, не виходячи з поточного каталогу:
(cd ~/foo && git status)
git --git-dir=~/foo/.git --work-tree=~/foo status
GIT_DIR=~/foo/.git GIT_WORK_TREE=~/foo git status
(cd ../..; git grep foo)
for d in d1 d2 d3; do (cd $d && git svn rebase); done
Методи, показані вище, прийнятні для сценаріїв, але занадто громіздкі для швидкого виклику командного рядка.
З цією новою опцією вищезазначене можна зробити за допомогою меншої кількості натискань клавіш:
git -C ~/foo status
git -C ../.. grep foo
for d in d1 d2 d3; do git -C $d svn rebase; done
cd /other/dir && git log && cd -в баш-шкаралупі?