Issue with last line / line ending between FileTree and other repositoroes
Hi Dale, During Smalltalks, you helped me to start loading my code into GemStone. For that, we created a temp FileTree repository so that we could easily edit/save and retry the load. That saved us modifying the code elsewhere, commit, load again etc... Cool! But now I have a problem... I am trying to merge from filetree to my original repo. And when I do a diff (Monticello "Changes"), ALL methods look like modified. FileTree either: - Removed last empty lines - Changed the last dot of the last line. - Removed last space of the last line So...in summary, it is like if it has changed always the very last character (whether it is a space, a dot or an empty line). Maybe this is related to crlf I don't know. But it is a pain because it looks like I am committing 5k changes! hahaha and I cannot easily see what I have really changed. Is this a known problem? Any workaround? I will send you by private email some screenshots. Thanks! -- Mariano http://marianopeck.wordpress.com
On Tue, Nov 12, 2013 at 12:09 PM, Mariano Martinez Peck < marianopeck@gmail.com> wrote:
Hi Dale,
During Smalltalks, you helped me to start loading my code into GemStone. For that, we created a temp FileTree repository so that we could easily edit/save and retry the load. That saved us modifying the code elsewhere, commit, load again etc... Cool! But now I have a problem... I am trying to merge from filetree to my original repo. And when I do a diff (Monticello "Changes"), ALL methods look like modified. FileTree either:
- Removed last empty lines - Changed the last dot of the last line. - Removed last space of the last line
Did it perhaps change the line-end character?
So...in summary, it is like if it has changed always the very last character (whether it is a space, a dot or an empty line). Maybe this is related to crlf I don't know. But it is a pain because it looks like I am committing 5k changes! hahaha and I cannot easily see what I have really changed.
Is this a known problem? Any workaround?
I will send you by private email some screenshots.
Thanks!
-- Mariano http://marianopeck.wordpress.com
-- best, Eliot
Just a guess, but github warns when a newline is missing at end of file, because there are still a few unix tools in the world inheriting from the early 70s that cannot deal with such files, so maybe someone wanted github to be happy and forced some extra newline at end of each Smalltalk method? 2013/11/12 Eliot Miranda <eliot.miranda@gmail.com>
On Tue, Nov 12, 2013 at 12:09 PM, Mariano Martinez Peck < marianopeck@gmail.com> wrote:
Hi Dale,
During Smalltalks, you helped me to start loading my code into GemStone. For that, we created a temp FileTree repository so that we could easily edit/save and retry the load. That saved us modifying the code elsewhere, commit, load again etc... Cool! But now I have a problem... I am trying to merge from filetree to my original repo. And when I do a diff (Monticello "Changes"), ALL methods look like modified. FileTree either:
- Removed last empty lines - Changed the last dot of the last line. - Removed last space of the last line
Did it perhaps change the line-end character?
So...in summary, it is like if it has changed always the very last character (whether it is a space, a dot or an empty line). Maybe this is related to crlf I don't know. But it is a pain because it looks like I am committing 5k changes! hahaha and I cannot easily see what I have really changed.
Is this a known problem? Any workaround?
I will send you by private email some screenshots.
Thanks!
-- Mariano http://marianopeck.wordpress.com
-- best, Eliot
Hi Mariano, it is probably a bug in the way the changes are computed: in MC usually, if the timestamp of a method changes, then this is a change, even if the source code are exactly the same... No need to search for a missing end of line character :). I have been pushing for integration of a fix, but I have to check, depending on your version of Pharo, whether it was integrated or not (the fix is less obvious than I thought at first because it plays with a MCDefinition instance cache and may break tests). Try to look for MCMethodDefinition>>= and see there if the test check for timestamp equality before testing for source equality. Thierry Le 12/11/2013 21:09, Mariano Martinez Peck a écrit :
Hi Dale,
During Smalltalks, you helped me to start loading my code into GemStone. For that, we created a temp FileTree repository so that we could easily edit/save and retry the load. That saved us modifying the code elsewhere, commit, load again etc... Cool! But now I have a problem... I am trying to merge from filetree to my original repo. And when I do a diff (Monticello "Changes"), ALL methods look like modified. FileTree either:
- Removed last empty lines - Changed the last dot of the last line. - Removed last space of the last line
So...in summary, it is like if it has changed always the very last character (whether it is a space, a dot or an empty line). Maybe this is related to crlf I don't know. But it is a pain because it looks like I am committing 5k changes! hahaha and I cannot easily see what I have really changed.
Is this a known problem? Any workaround?
I will send you by private email some screenshots.
Thanks!
-- Mariano http://marianopeck.wordpress.com
-- Thierry Goubier CEA list Laboratoire des Fondations des Systèmes Temps Réel Embarqués 91191 Gif sur Yvette Cedex France Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
participants (4)
-
Eliot Miranda -
Goubier Thierry -
Mariano Martinez Peck -
Nicolas Cellier