Запуск "git status" из любой папки показывает статус с определенным репо
Когда я печатаю git status
в любой папке он показывает статус одного из моих проектов git по сравнению с текущей папкой. Даже когда я в другом проекте git. Кроме того, если я cd
в /root
папки и проверки нет .git
папка присутствует и введите git status
Я увижу статус этой папки в моем git-проекте.
Есть ли в git отображение по умолчанию, глобальный конфиг выглядит нормально?
2 ответа
Когда у тебя есть GIT_DIR
установить в среде, но не также GIT_WORK_TREE
, тогда вы работаете с Git за пределами его спецификаций. Или:
Удалить
GIT_DIR
из среды, и пусть Git обнаружит.git
сам каталог,Или установить
GIT_WORK_TREE
а также указать на рабочее дерево, соответствующееGIT_DIR
,
Но, честно говоря, последнее не совсем то, как нужно работать с Git во время обычной работы. Вы должны сделать первое.
Ну... это в комментариях, но для наглядности:
Это происходит, если у вас есть GIT_DIR
переменная окружения, указывающая на конкретный репозиторий. GIT_DIR
переопределяет обычные правила поиска в каталоге для поиска .git
папка и просто говорит: "Вы находитесь в репо, а метаданные здесь".
Вообще я бы очистил GET_DIR
переменная, и установите ее только при необходимости. Я не уверен, для какой цели вы его поставили, и если эта цель все еще нужна, вам, возможно, придется сначала сделать что-то другое, чтобы убедиться, что она установлена, когда она должна быть. Но я могу сказать, что единственный раз, когда я использовал GET_DIR
находятся в сценариях (и затем я обязательно очищу его, когда работа сценария будет завершена), и я не могу думать, почему вы хотите, чтобы он устанавливался все время - по той причине, которую вы только что испытали.