Запуск "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 находятся в сценариях (и затем я обязательно очищу его, когда работа сценария будет завершена), и я не могу думать, почему вы хотите, чтобы он устанавливался все время - по той причине, которую вы только что испытали.

Другие вопросы по тегам