Sto facendo qualcosa di molto semplice sbagliato. Sto cercando di preparare un normale file patch, quindi posso riapplicare alcune modifiche:
$ git diff > before
$ git diff something_here > save.patch
$ git checkout .
$ patch < save.patch
$ git diff > after
$ diff before after
$
Con something_here
blank funziona quasi, ma i nomi dei file non sono corretti. Penso che mi sto perdendo qualche opzione.
Nella vita reale, farò un'unione dopo il checkout, quindi la patch potrebbe fallire lì, ma vedi cosa sto arrivando.
Modifica La
mia colpa qui per aver fatto la domanda sbagliata. La vera domanda è: voglio salvare le mie modifiche, fare un'unione e riapplicare le modifiche, se possibile? L'ho chiesto nel modo sbagliato perché sono abituato a usare la patch per risolvere questo tipo di problemi e git diff
sembrava che fosse quello che voleva che facessi.
Il commento di Charles Bailey ebbe la risposta giusta. Per me, git-apply è la cosa giusta da fare (git-stash sembra più pesante di quello di cui ho bisogno e il rebasing e i bundle sono decisamente oltre il mio attuale livello di abilità.) Accetterò la risposta che Charles ha dato (perché tu non posso accettare un commento). Grazie per tutti i suggerimenti.
Modifica, 6 anni dopo
Come tutti sanno l'argomento, ho sopravvalutato la difficoltà di git stash
. Praticamente ogni giorno, userò la seguente sequenza:
$ git stash
$ git merge
$ git stash pop
git stash
o altri strumenti git?
git stash
sia la soluzione più semplice per quello che stai cercando di fare, ma ci sono molti approcci che funzionano.
git-svn
.
patch
anzichégit apply
?