применяя патч, созданный дифф местной работы и удаленного происхождения не может - почему

голоса
0

Я хочу создать патч от различий между моим локальным кодом и удаленным происхождением.

Я делаю это с:

git diff origin/myTestBranch > myPatch.patch 

Я иду в отдельную папку, что клонировали же репо и просто вытащил myTestBranch. Я делаю это с

cd testPatchRepo
git clone ....
git checkout myTestBranch

Когда я пытаюсь применить патч - он терпит неудачу! Зачем? Я создал патч именно для этой цели, что я ее применения ...

В качестве примера, вот часть моего патча:

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.

И сообщение об ошибке включает в себя:

myPatch.patch:36: trailing whitespace.

error: patch failed: source/tutorial/install.txt:16
error: source/tutorial/install.txt: patch does not apply
Задан 03/12/2019 в 00:05
источник пользователем
На других языках...                            


1 ответов

голоса
2

Хотя в целом можно применить выход git diffк другому рабочему дереву, в этом случае вы не можете. Причина заключается в том, что git diffпоказывает , что ваш подмодуль загрязнен: то есть, у него есть неподтвержденные изменения. Поскольку нет никакого способа , чтобы представить эти изменения в дифф как он стоит, любая попытка применить их не удастся.

Если вы хотите , чтобы исключить эти изменения подмодуля, вы можете использовать git diff --ignore-submodules, который будет игнорировать ваши подмодули ли изменено или нет. Если вы хотите , чтобы включить их рекурсивно, вы можете использовать git diff --submodule=diff. Это исправление не будет обновлять подмодуль себя обязательство, хотя это изменит подмодуль рабочего дерева, так что это не рекомендуется.

Оба эти должны производить appliable патчи.

Ответил 03/12/2019 в 02:15
источник пользователем

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