After complete coding one module in development branch. Next phase is merging.
Obviously, you can merge source code automatically without no errors happen.
However, life is not dream.
Create a patch
git diff HEAD > newTariff.patch
Apply patch
git apply newTariff.patch
then problem happens
Problem
git apply newTariff.patch:106: trailing whitespace. patch does not apply
Route cause:
Nguyên nhân:
Do trong source code có những dấu space thừa (ô vuông màu đỏ hình dưới)
Some whitespaces is existed in your patch. (red area in below pictures)
Fix
Clean white space and patch again.
Cách khắc phục
Xóa những dấu space này đi và thực hiện patch lại
Make up after complete coding. Find and clean whitespace before create patch file.
Sửa sau khi code xong
Kiểm tra sau khi code xong có lỗi này không
git diff HEAD --check
Prevent whitespace by manually when typing source code
Sửa ngay khi đang code
=>Bật chức năng hiển thị các dấu whitespace, hoặc remove trailing space. Tùy từng editor
Ví dụ:
Notepad ++
Edit -> Blank Operation -> Trim Trailing Space
Visual Studio Code
View -> Toggle Render Whitespace
Reference:
https://stackoverflow.com/questions/14509950/my-diff-contains-trailing-whitespace-how-to-get-rid-of-it#
For me
git apply --reject --whitespace=fix newTariff..path
Howerver it generate a new file *.rej (rej is shorted of "rejected").
I open rej file and continue fixing my problem manually
Other good guideline version.
http://vanwilson.info/2016/05/wrangling-wandering-whitespace-git/
More, Sometimes, for whatever reason, You have to produce patch-files (under Linux) that are in the wrong direction.
Reverse patch file
Obviously, you can merge source code automatically without no errors happen.
However, life is not dream.
Create a patch
git diff HEAD > newTariff.patch
Apply patch
git apply newTariff.patch
then problem happens
Problem
git apply newTariff.patch:106: trailing whitespace. patch does not apply
Route cause:
Nguyên nhân:
Do trong source code có những dấu space thừa (ô vuông màu đỏ hình dưới)
Some whitespaces is existed in your patch. (red area in below pictures)
Fix
Clean white space and patch again.
Cách khắc phục
Xóa những dấu space này đi và thực hiện patch lại
Make up after complete coding. Find and clean whitespace before create patch file.
Sửa sau khi code xong
Kiểm tra sau khi code xong có lỗi này không
git diff HEAD --check
Prevent whitespace by manually when typing source code
Sửa ngay khi đang code
=>Bật chức năng hiển thị các dấu whitespace, hoặc remove trailing space. Tùy từng editor
Ví dụ:
Notepad ++
Edit -> Blank Operation -> Trim Trailing Space
Visual Studio Code
View -> Toggle Render Whitespace
Reference:
https://stackoverflow.com/questions/14509950/my-diff-contains-trailing-whitespace-how-to-get-rid-of-it#
For me
git apply --reject --whitespace=fix newTariff..path
Howerver it generate a new file *.rej (rej is shorted of "rejected").
I open rej file and continue fixing my problem manually
Other good guideline version.
http://vanwilson.info/2016/05/wrangling-wandering-whitespace-git/
More, Sometimes, for whatever reason, You have to produce patch-files (under Linux) that are in the wrong direction.
Reverse patch file
patch -p1 -R < path/file.patch
(If your patch was applied with the -p0 option, use that instead.)Or:
git apply -R path/file.patch
Showing trailing spaces in vim
:highlight ExtraWhitespace ctermbg=red guibg=red
:match ExtraWhitespace /\s\+$/
Comments
Post a Comment