2015-02-10 2 views
0

Вот сценарий.Восстановить часть файла в старой фиксации

commit -am "1 create book.txt 
commit -am "2 add content to book.txt" 
commit -am "3 delete content from book.txt and replace it new content" 

Теперь мы хотим, чтобы вернуть содержимое, которое мы добавили в фиксации 2 и удалена в фиксации 3. Мы попытались объединить совершить 2 с фиксацией 3, но это не работает. Конечно, мы можем просто проверить фиксацию 2, скопировать содержимое, которое мы удалили, а затем вставить снова после того, как мы проверим фиксацию 3. Есть ли способ сделать это, хотя, с чем-то похожим на слияние, перезагрузку или патч? Конечный результат должен иметь как содержание, которое мы добавили в фиксации 2 и содержание, которое мы добавили в фиксации 3.

+0

Укажите, что вы подразумеваете под "*, мы хотим вернуть содержимое, которое мы добавили в commit 2, и удалить в commit 3 *". – Jubobs

ответ

2

Это именно то, что вишневый выбор для.

Используйте git cherry-pick commit-2 для повторного воспроизведения, которое фиксируется поверх текущего состояния.

+0

Perfect. Вы заслуживаете каждого из своих 430k SO очков. –

Смежные вопросы