cerotto applicando creato da diff del lavoro locale e remota origine non riesce - perchè

voti
0

Voglio creare una patch da differenze tra il mio codice locale e l'origine remota.

Lo faccio con:

git diff origin/myTestBranch > myPatch.patch 

Vado in una directory separata che ha clonato la stessa pronti contro termine e che ha appena tirato myTestBranch. Lo faccio con

cd testPatchRepo
git clone ....
git checkout myTestBranch

Quando cerco di applicare la patch - viene a mancare! Perché? Ho creato una patch esattamente per lo scopo che sto applicarlo ...

A titolo di esempio, qui è parte della mia patch:

diff --git a/source/tutorial/install.txt b/source/tutorial/install.txt
index 4e26a8b..5971efa 100644
--- a/source/tutorial/install.txt
+++ b/source/tutorial/install.txt
@@ -15,8 +15,6 @@ Install {+bi-short+} on macOS
    :class: singlecol

 .. include:: /includes/fact-bi-enterprise.rst
-sdfjsdlf
-This is Me!!!sdlfksjldfkj

 To set up |bi|,
 follow the steps on this page. kjhaskjfhakjsf gsgsdgsdgsdg sdfsdfsdf lsdjflsjdfsj
diff --git a/source/tutorial/install-bi-connector-windows.txt b/source/tutorial/install-bi-connector-windows.txt
index 5ef2cfc..cd0e36d 100644
--- a/source/tutorial/install-bi.txt
+++ b/source/tutorial/install-bi.txt
@@ -16,7 +16,7 @@ Install {+bi-short+} on Windows

 .. include:: /includes/fact-bi-enterprise.rst

-Maddie 1
+Maddie 12
 To set up |bi|,
 follow the steps on this page.

E il messaggio di errore include:

myPatch.patch:36: trailing whitespace.

error: patch failed: source/tutorial/install.txt:16
error: source/tutorial/install.txt: patch does not apply
È pubblicato 03/12/2019 alle 00:05
fonte dall'utente
In altre lingue...                            


1 risposte

voti
2

Mentre, in generale, è possibile applicare l'output di git diffun altro albero di lavoro, in questo caso non si può. Il motivo è che git diffgli spettacoli che il modulo è sporca: che è, ha modifiche non. Dal momento che non c'è modo di rappresentare questi cambiamenti nel diff così com'è, ogni tentativo di applicare loro falliranno.

Se si desidera escludere questi cambiamenti sottomodulo, è possibile utilizzare git diff --ignore-submodules, che ignorerà le vostre sottomoduli, sia modificato o meno. Se si vuole includerli in modo ricorsivo, è possibile utilizzare git diff --submodule=diff. Questo patch non aggiornerà il modulo si impegna, anche se cambierà il modulo albero di lavoro, quindi non è consigliabile.

Sia di coloro che dovrebbero produrre patch appliable.

Risposto il 03/12/2019 a 02:15
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more