Подтвердить что ты не робот

Git checkout выдает сообщение об ошибке - файлы без изменений

После запуска git update-index --assume-unchanged path/to/file на определенной ветке я не могу переключать ветки с помощью git checkout.

Он выдает следующую ошибку:

Ошибка: ваши локальные изменения в следующих файлах будут перезаписаны с помощью checkout:

      path/to/file

Пожалуйста, сделайте свои изменения или запишите их, прежде чем вы сможете переключаться между ветвями.

Aborting

Но оба git diff и git status говорят мне, что нет никакой разницы, и нет ничего для фиксации /stash.

Как отключить ветвь?

Есть ли лучшая альтернатива git update-index --assume-unchanged (кроме .gitignore, потому что я не хочу, чтобы ее игнорировали)? (То же, что и вопрос 2 @git update-index --no-take-unchanged не работает)

4b9b3361

Ответ 1

После некоторого использования я предпочитаю git update-index --skip-worktree, что является гораздо лучшей альтернативой git update-index --assume-unchanged.

Обратите внимание на Разницу между "предполагать-неизменным" и "skip-worktree" для получения дополнительной информации.

Я также планирую проверить метод, указанный в этот ответ на git считать неизменным vs skip worktree - игнорирование символической ссылки, которая, кажется, больше защитный подход.