Что такое GIT_WORK_TREE, почему мне никогда не нужно было устанавливать эту переменную ENV, почему сейчас?

Я использую Git под Ubuntu Linux для синхронизации и развертывания моих проектов.

У меня есть Repo на моей локальной рабочей машине Linux и два репозитория на моем сервере, одно голое репо и одно как развернутое приложение.

Это всегда работало нормально, но теперь я создал еще одно репо для другого своего веб-сайта и теперь получаю эту ошибку:

root@vserver5:/var/www/ninethsky# git pull origin master
fatal: /usr/lib/git-core/git-pull cannot be used without a working tree.

Поэтому мне нужно установить GIT_WORKING_TREE ENV-Var, но что это именно, где установить его?

Это мой .git / config репо:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = /home/git/ninethsky/.git
        fetch = +refs/heads/*:refs/remotes/origin/*

Есть еще одно репо с bare = true и репо на моей локальной рабочей машине.

Затем я удалил все репозитории , но первоначальный, теперь я получаю:

root@vserver5:/var/www/ninethsky# git init
fatal: GIT_WORK_TREE (or --work-tree=<directory>) not allowed without specifying GIT_DIR (or --git-dir=<directory>)
root@vserver5:/var/www/ninethsky# git init --git-dir=/var/www/ninethsky
error: unknown option `git-dir=/var/www/ninethsky'

Я решил проблему git init , отключив GIT_WORK_TREE, который был пуст. GIT_WORK_TREE и GIT_DIR не установлены. git init снова работает, все еще существует проблема с git add. и так далее, когда дело доходит до действий git в клонированном репозитории, который был установлен на голое.

Спасибо , Joern.

64
задан Timo Tijhof 19 April 2014 в 00:42
поделиться