Я делаю что-то очень простое неправильно. Я пытаюсь подготовить обычный файл патча, чтобы я мог применить некоторые изменения:
$ git diff > before
$ git diff something_here > save.patch
$ git checkout .
$ patch < save.patch
$ git diff > after
$ diff before after
$
С something_here пустым это почти работает, но имена файлов не верны. Я думаю, что я просто упускаю какой-то вариант.
В реальной жизни я собираюсь сделать слияние после проверки, так что патч может потерпеть неудачу, но вы видите, к чему я клоню.
Отредактируйте
Мою ошибку здесь, чтобы задать неправильный вопрос. Вопрос в том, хочу ли я сохранить свои изменения, выполнить слияние, а затем повторно применить изменения, если это возможно? Я спросил это неправильно, потому что я привык использовать патч для решения такого рода проблем и git diffвыглядел так, как будто он хотел, чтобы я это сделал.
На комментарий Чарльза Бейли был правильный ответ. Для меня git-apply - это то, что нужно делать (git-stash выглядит тяжелее, чем мне нужно, а перебазирование и связки определенно выходят за рамки моего текущего уровня навыков.) Я собираюсь принять ответ, который дал Чарльз (потому что вы не могу принять комментарий). Спасибо за все предложения.
Редактировать, 6 лет спустя.
Как любой, кто знаком с предметом, знает, я переоценил сложность git stash. Почти каждый день я буду использовать следующую последовательность:
$ git stash
$ git merge
$ git stash pop
git stashили другие инструменты git?
git stashэто самое простое решение для того, что вы пытаетесь сделать, но есть много подходов, которые работают.
git-svn.
patchа неgit apply?