Я хочу прекратить отследить файлы, но все еще сохранять их в моем рабочем дереве.
Я собрал это git rm --cached FILE
позволит мне сделать это. Однако, если кто-то еще вытянет это изменение, то их локальные копии будут удалены?
Да, их копии будут автоматически удалены. Представьте, если бы этого удаления не произошло - тогда рабочие копии всех пользователей были бы засорены горами удаленных файлов, которые больше не нужны.
Однако, если удаленные пользователи внесли локальные изменения в эти файлы, они не будут удалены, поскольку pull
приведет к конфликту слияния.
Как Джефроми предлагает в своем комментарии, в то время как файлы удаляются на стороне других пользователей, их можно легко восстановить - они находятся под контролем версий, не так ли? ;-) Файлы могут быть получены с помощью git checkout
. В качестве ревизии вы можете указать идентификатор предыдущей фиксации, для извлечения он сохранен в ORIG_HEAD
(см. этот вопрос для подробностей):
git checkout ORIG_HEAD -- removed_file