Как удалить файлы из git промежуточной области?
Я внес изменения в некоторые из моих файлов в своем локальном репо, а затем git add -A
который, я думаю, добавил слишком много файлов в промежуточную область. Как удалить все файлы из промежуточной области?
После этого я просто вручную git add "filename"
.
Ответы
Ответ 1
Вы можете отключить файлы из индекса, используя
git reset HEAD -- path/to/file
Точно так же, как git add
, вы можете нерегулярно отформатировать файлы по каталогу и т.д., чтобы сразу отключить все, запустите это из корневого каталога вашего репозитория:
git reset HEAD -- .
Кроме того, для справок в будущем вывод git status
расскажет вам о командах, которые необходимо выполнить для перемещения файлов из одного состояния в другое.
Ответ 2
Использование
git reset
чтобы отключить все поэтапные файлы.
Ответ 3
Если вы уже сделали кучу нежелательных файлов, вы можете отключить их и сообщить git, чтобы пометить их как удаленные (без их удаления) с помощью
git rm --cached -r .
--cached
сообщает, что он удаляет пути из этапа и индекса, не удаляя сами файлы, а -r
рекурсивно работает с каталогами. Вы можете git add
сохранить любые файлы, которые хотите отслеживать.
Ответ 4
Вы можете использовать
git reset HEAD
затем добавьте нужные файлы с
git add [directory/]filename
Ответ 5
Как указано в других ответах, вы должны использовать git reset
. Это git add -A
действие git add -A
.
Примечание: git reset
эквивалентен git reset --mixed
который делает это
Сбрасывает индекс, но не рабочее дерево (т.е. Измененные файлы сохраняются, но не помечены для фиксации) и сообщает, что не обновлялось. Это действие по умолчанию. [ git reset ]
Ответ 6
Вы можете сбросить область постановки несколькими способами:
-
Сбросьте HEAD и добавьте все необходимые файлы для регистрации снова, как показано ниже:
git reset HEAD ---> removes all files from the staging area
git add <files, that are required to be committed>
git commit -m "<commit message>"
git push
Ответ 7
Как сказал Майкл Фукаракис,
git status
уже говорит вам, что делать, если вы хотите отключить файлы.
Поэтому, если вы внесли некоторые изменения в некоторые файлы и хотите удалить эти изменения, просто git checkout -- <path to modified file>
.
Ответ 8
Если вы хотите очистить свою промежуточную область, с дополнительным преимуществом способности восстанавливать ее, вы можете использовать:
git stash
Если вы хотите очистить также неотслеживаемые файлы:
git stash --all
Наконец, если вы хотите восстановить или удалить сохраненные элементы, соответственно:
git stash pop
git stash drop
Ответ 9
Лучший способ отменить ваш файл, который уже находится в области подготовки, это
git reset --hard
который возвращает ваши подготовленные файлы обратно. Осторожнее, это удалит поэтапные и неустановленные изменения.
Ответ 10
Я пробовал все эти методы, но никто не работал для меня. Я удалил.git файл, используя rm -rf.git
сформировал локальный репозиторий, а затем снова выполнил git init
и git add
и рутинные команды. Это сработало.
Ответ 11
используйте git reset HEAD --hard. Это должно очистить область подготовки.