我想合併一個提交(〜20)的分支的分支。然而,第一次提交是關於重新縮進整個代碼正確和所有後續提交還包含空白更改,我不想要。 我正在嘗試重新應用所有這些提交,但我不知道如何告訴git忽略空間更改。重新申請提交,而忽略所有空間變更與Git
然而,我嘗試了git format-patch -20 --ignore-all-space
後跟git apply *.patch
在一個乾淨的分支上,但這顯然失敗了,因爲補丁單獨格式化,其祖先的空間變化。
基本上我想有相同的歷史,但不帶空格的變化:
A - B - C - D
/
P - Q
\
A'- B'- C'- D' (spaces trimmed)
編輯:爲了澄清其承諾包含的內容。
- A - 重新縮進(與
spaces
更換tabs
)命名富整個文件。我想下降吧。 - B - 在foo中應用有效的代碼更改。我想保持吧。
- C - 應用有效的代碼更改並重新注入另一個文件bar。我想只保留代碼變更(保留爲經修改的線空間變化)
- d - 在FOO和酒吧應用有效的代碼更改,因爲他們現在使用
spaces
,而不是tabs
事實。我想也保留這些變化。
那麼,是'A'提交即「講述的是重新正確地縮進整個代碼」?你能否在這個問題上澄清一下? – sschuberth
此外,請您澄清是否提交包含空格*和*代碼更改在同一行*,或只在同一個*文件*? – sschuberth
我編輯了這個問題;這有幫助嗎? – bagage