Sto facendo qualcosa di molto semplice sbagliato. Sto cercando di preparare un file di patch normale, in modo da poter riapplicare alcune modifiche:È possibile ottenere un output compatibile con patch da git-diff?
$ git diff > before
$ git diff something_here > save.patch
$ git checkout .
$ patch < save.patch
$ git diff > after
$ diff before after
$
Con something_here
vuoto quasi funziona, ma i nomi dei file non sono giuste. Penso di essere solo che mi manca qualche opzione.
Nella vita reale, ho intenzione di fare un'unione dopo il checkout, quindi la patch potrebbe fallire lì, ma si vede quello che sto ottenendo.
Modifica La mia colpa è qui per aver fatto la domanda sbagliata. La vera domanda è, voglio salvare le mie modifiche, fare una fusione, quindi riapplicare le modifiche, se possibile? L'ho chiesto nel modo sbagliato perché io sono utilizzato per utilizzare la patch per risolvere questo tipo di problemi e git diff
sembrava che fosse quello che voleva che io facessi.
Charles Bailey's commento ha avuto la risposta giusta. Per me, git-apply è la cosa giusta da fare (git-stash sembra più pesante di quanto io abbia bisogno e la ridefinizione e il bundle è decisamente al di fuori del 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 chiunque abbia familiarità con il soggetto sa, ho sopravvalutato la difficoltà di git stash
. Praticamente tutti i giorni o giù di lì, ho userà la seguente sequenza:
$ git stash
$ git merge
$ git stash pop
C'è qualche ragione che specificamente vuole utilizzare 'patch' piuttosto che' git apply'? –
E anche allora, hai davvero bisogno di patch piuttosto che qualcosa come 'git stash' o altri strumenti git? –
Post-edit, penso che 'git stash' è la soluzione più semplice per quello che stai cercando di fare, ma ci sono molti approcci che funzionano. –