Находясь в вашей ветке, вы можете извлечь файл из master
:
git checkout master the_file
Подтвердить это изменение и затем найти sha1 коммита, где вы случайно изменили файл.И используйте
git rebase -i that_sha1
. Вы увидите список коммитов из вашей ветки, от самых старых до самых новых.Переместите последнюю строку (фиксацию, которую вы только что сделали) после первой строки (неверная фиксация) и измените pick
на fixup
.Это будет иметь тот же эффект, что и исправление неверного коммита, а затем перебазирование остальных коммитов поверх этого.
Все это предполагает, что вы не опубликовали свою ветку.Если вы сделали это, и у кого-то еще есть это сейчас, у вас проблемы.