Устранение неполадок с неправильным каталогом .git(ничего не делать)
Я начал получать это сообщение. Независимо от того, что я редактирую и пытаюсь совершить, он говорит, что ничего не делать. Похож, что git не видит мой рабочий каталог и ищет где-то еще.
Если я запустил git status
, он выдает то же самое:
nothing to commit (working directory clean)
Если я создаю новую ветку и что-то редактирую, то происходит то же самое. Это началось, когда мне нужно было зафиксировать столкновения слиянием. Когда я хотел объединить одну ветку с главной ветвью, мне пришлось вручную ее исправить, и мне нужны были файлы, чтобы они выглядели точно так же, как в этой ветки, переписывающей мастер-ветку те же файлы. Поэтому я добавил эти файлы, и это позволило мне объединить его. Но тогда, независимо от того, что я меняю, это показывает, что нечего совершать.
Что можно сделать здесь?
Ответы
Ответ 1
Нашел то, что было не так. Я не понимаю, как, но путь к каталогу .git
каким-то образом был изменен на другой путь, чем я работал. Итак, все, что я изменил, не было проверено, потому что git проверял другое место. Я заметил это, когда я повторно инициализировал его, и он показал, что он повторно инициализировал совершенно другой каталог. Когда я cd ..
из моего текущего каталога и cd
вернется обратно, а затем снова инициализируется, он снова вернется в правильный каталог .git
и начнет видеть мои изменения.
Ответ 2
Для людей, работающих в открытых проектах с открытым исходным кодом, если вы сталкиваетесь с этим поведением, скорее всего, файл, который вы редактируете, исключается из репозитория git, используя .gitignore
. Я столкнулся с таким же поведением, и после нескольких часов я обнаружил, что файл, который я делал для изменения, исключен в .gitignore
, потому что это файл настроек, и каждый из них будет иметь свою локальную версию.
Ответ 3
Проверьте местоположение, правильно ли оно расположено в проекте git.
Ответ 4
У меня была такая же проблема. Филиал, над которым я работал, не отслеживался. Исправлено:
git push orgin
Это временно зафиксировано. Чтобы внести соответствующие изменения I:
git config push.default tracking
Ответ 5
В моем случае я ранее инициализировал каталог git, где я пытался создать новый. Я просто удалил все старые файлы и начал с нуля.
Ответ 6
Для всех, кто видит эту проблему, самым простым решением было найти "git clone" ваше репо и удалить старый каталог. Это должно правильно настроить ваш путь по умолчанию.
Ответ 7
Вот еще один поворот. Мой файл .gitignore, похоже, был изменен/поврежден, так что файл, который я игнорировал
например.
/Project/Folder/StyleCop.cache
изменилось на это (теперь обратите внимание на две отдельные строки)
/Project/Folder
StyleCop.cache
поэтому git игнорировал любые файлы, добавленные в проект и ниже.
Очень странно, не знаю, как был изменен файл .gitignore, но мне потребовалось некоторое время, чтобы его обнаружить. После исправления сотни файлов css и js, которые я добавил, вошли.
Ответ 8
У меня просто была проблема, потому что я был в неправильной папке. Я был вложен в 1 уровень, поэтому не было найдено файлов git.
Когда я выполняю cd ..
в правильном каталоге, я смог выполнить, как и ожидалось.
Ответ 9
Обнаружено это при использовании SourceTree, исправлено его
- Сначала запишите текущие незафиксированные изменения.
- Применить/разблокировать те же изменения, используя Sourcetree.
Работал как шарм.
Ответ 10
попробуйте сначала удалить начало координат, прежде чем добавлять его снова
git remote rm origin
git remote add origin https://github.com/abc/xyz.git
Ответ 11
Не пытайтесь совершать/добавлять файлы. Просто запустите следующие 2 команды (:
git remote add origin http://xyzremotedir/xyzgitproject.git
git push origin master
Ответ 12
В главном ветки
Проблема в том, что он уже совершил ничего не зафиксировать (рабочий каталог чист), столкнувшись с этой проблемой, просто используйте только следующую команду
git push -u origin master
или
git reset
git add .
git commit -m "your commit message"
git push -u origin master
Ответ 13
если .git уже существует в вашем каталоге, а затем выполните:
-
rm -rf .git/
-
git init
-
git remote add origin http://xyzremotedir/xyzgitproject.git
-
git commit -m "do commit"
-
git push origin master