Hi Abu,
I use notepad++ to do my editing and sourcetree on windows.
I have tried cherry picking the commits between the images, it always bombs out on me with a merge conflict. For me to compare the files and add changes, they need to be comparable in notepad++.
To compound things, download of xml files, opens in lf eol. open in notepad++, opens in cr lf
Thank you for telling us what tools you are using. This is what I use so I can explain what is going on.
The repositories are stored on UNIX based servers and the line terminators should all be LF characters. When you use SourceTree to fetch or check out a file it knows that you are using a Windows based system so as part of the file download the line endings are converted to the Windows appropriate CRLF. When you edit the files in Notepad++ it will preserve the CRLF until you check the file back in with SourceTree at which time the line endings will automatically be reverted back to the UNIX LF format.
If you were a UNIX user on your desktop then the SourceTree / GIT fetch would leave the line endings as LF. If you were a Mac user on your desktop then the SourceTree / Git fetch would replace the LF line endings with CR to match the Mac line ending format. Again this would be swapped out on submission back to the repository.
If you access the files directly in the repository or download them via the download ZIP option the the files will be delivered in their native UNIX or LF format. Similarly if the files are exchanged with the repository via FTP then the line endings *CAN* be manipulated to suit the receiving end as appropriate. I said *CAN* because if you transfer a file in BINARY format then the transfer end of line corrections will NOT happen! Most FTP transfers determine whether to use TEXT or BINARY transfers based on recognition of the file extension. In this case if your FTP client knows that an XML files are text based it will use TEXT mode transfer, but if it doesn't know that XML files are text based it will use BINARY mode transfers. The result would be that on a Windows PC the FTP transferred file would look wrong in any editor that is not aware of the line endings. Notepad++ would be fine but the normal Notepad would completely corrupt the file (it would delete all the line endings and make a file with a very long single line).
While you are trying to diff the different version of the files if you use a diff program that can account for different line endings, like WinMerge, then the comparisons will work properly as you expect. If you use a program like WinDiff, then it doesn't understand the line endings and will report the files as completely different!
In my case when I am working on ANYTHING for Enigma2 I usually always convert all files to UNIX format, LF endings, to avoid all such issues.
I hope this post is helpful to understanding what is happening. If you already know this then I don't mean offence by explaining it.
Regards,
Ian.