Как я могу сбросить мои коммиты, сохраняя при этом мои предполагаемые неизмененные файлы в git?

У меня довольно много файлов, которые я установил как

git update-index --assume-unchanged <file>

В некоторых случаях моя ветка перепутана и расходится с origin/master. Скажем

and have 4 and 8 different commits each, respectively.

Поэтому я хочу вернуть все свои коммиты и сохранить обновление на origin / master, пока мои предполагаемые неизмененные файлы не будут сброшены. Как я могу это сделать?

1 ответ

Решение

Вместо того, чтобы использовать --assume-unchanged, ты можешь попробовать --skip-worktree с git update-index,

Файл с флагом git update-index --skip-worktree должен сопротивляться git reset (что приведет к удалению из индекса любых добавленных изменений)

Вы можете увидеть полный анализ различий между --assume-unchanged а также --skip-worktree здесь

Это выглядит как --skip-worktree очень старается сохранить ваши локальные данные. Но это не мешает вам вносить изменения, если это безопасно. Плюс git не сбрасывает флаг pull,
Но игнорируя reset --hard Команда может стать неприятным сюрпризом для разработчика.

Другие вопросы по тегам