Когда используется git rm -f?
Я изучаю Git и не могу понять, при каких условиях используется флаг -f при выдаче команды "git rm". Пожалуйста, объясните сценарий, где rm -f потребуется вместо rm только?
Ответы
Ответ 1
Объяснение:
-f
используется для удаления файла, если файл не обновляется с последним завершенным фиксатором. Это должно помешать вам удалить файл, на который были внесены изменения, но еще не проверил их.
Пример:
Вы проверяете commit 0a12d4, который содержит файл sample.txt. Перед изменением любых файлов вы можете удалить sample.txt с помощью git rm sample.txt
. Однако, как только вы внесете изменения в sample.txt, вам нужно будет использовать git rm -f sample.txt
для удаления файла
Ответ 2
Если вы попытаетесь выполнить git rm
файл с неустановленными изменениями, он не сработает, если вы не указали флаг -f
:
$ git rm a.txt
error: 'a.txt' has local modifications
(use --cached to keep the file, or -f to force removal)
Ответ 3
Если вы редактируете файл, а затем понимаете, что хотите его удалить.
$ ls
func.c
$ vim func.c
...edit the file...
Теперь, когда я думаю об этом, я действительно хочу его удалить...
$ git rm func.c
error: 'func.c' has local modifications
(use --cached to keep the file, or -f to force removal)
$ git rm -f func.c