Я роблю щось дуже просте неправильно. Я намагаюся підготувати звичайний файл патча, щоб я міг повторно застосувати деякі зміни:
$ 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
?