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

Как git reset - сохранить все, кроме 4 файлов

Предполагая, что ничего не поставлено, какой рекомендуемый способ reset выполнить всю работу, за исключением файлов:

app/models/a.rb
app/views/a/index.html.rb
config/foo.rb
config/bar.rb

Другие грязные файлы существуют в app/models/и app/views/, которые я не хочу сохранять.

4b9b3361

Ответ 1

Как вы описали проблему, не похоже, что вы хотите сделать reset. Самое простое:

 git add app/models/a.rb app/views/a/index.html.rb config/foo.rb config/bar.rb
 git checkout .

поэтому он добавляет ваши 4 файла в индекс и проверяет чистые версии (т.е. отбрасывает изменения) для других файлов.

Я предполагаю, что раньше вы не устраивали (git add) ранее измененные файлы (вы должны затем отключить его с помощью reset).

Ответ 2

Один из способов: git передать эти четыре файла, затем reset hard, а затем отменить фиксацию:

git add <files to keep>
git commit -m "temp"
git reset --hard
git reset HEAD~

Ответ 3

Если эти четыре файла находятся в индексе, а грязные файлы - нет, простой git-clean должен сделать трюк. Если вы не уверены, сначала используйте переключатель --dry-run и обратите внимание на переключатель --exclude.

В противном случае, придерживайтесь siride answer