Невозможно заставить Git спрашивать об удалении удаленных файлов - PullRequest
2 голосов
/ 30 июня 2009

Предположим, у вас есть файл, который был зафиксирован в вашем репозитории Git.

Вы удаляете файл просто

rm file

Удаленный файл остается в вашем репозитории Git, хотя у вас его нет.

Мой старый Git пожаловался мне на то, что вы не можете зафиксировать файл перед вами git add/rm в аналогичной ситуации. Я бы хотел вернуть такое же поведение.

Как вы можете заставить Git не позволять вам совершать без решения проблемы с существованием файла первым?

Ответы [ 2 ]

4 голосов
/ 30 июня 2009

Как насчет использования:

$ git commit -a

Из Руководство по git commit Страница:

Команда git commit -a сначала просматривает ваше рабочее дерево, замечает, что вы изменили hello.c и удалила goodbye.c, и выполняет необходимые git add и git rm.


Если вам не нужно автоматическое разрешение, а только предупреждение, в порядке 'pre-commit hook'.

 chmod a+x .git/hooks/pre-commit

Этот скрипт будет проверять вывод

 git ls-files -d

И предупреждаю вас об удаленных (но не 'git rm' ed) файлах

1 голос
/ 30 июня 2009

Даже если файл не существует в вашей файловой системе, он существует в репозитории git. Кто-то, клонирующий репозиторий, получит файл, даже если его нет на вашей коробке.

...