Hacker News new | ask | show | jobs
by cgh 4079 days ago
How does source control work for Pharo? I know it was an issue with Smalltalk as your "source" was a modified binary image. Is this the same?
4 comments

You can use Pharo with git and github outside the box if you are using MacOS or Linux, there are some issues I think with Windows. Pharo uses Filetree which export source to files and makes commits , pulls , pushs etc. Gitfiletree allows filetree to be managed by git from inside Pharo without the use of a terminal but you can still use the terminal if that is your thing. I explain filetree, git and github in this video

https://www.youtube.com/watch?v=n2WNYDtO0cE&list=PLqbtQ7OkSt...

Incidentally, even back in the day with the original Smalltalk-80 the "source" was available in a plain text sources file and the programmer's changes and additions were available in a plain text changes file which were in-sync with the image file.

Of course, arbitrary code could be exported in text files from the "binary image" file (even if that required code to be de-compiled from bytecode to text).

The source still is available as source code, so tools can work with that. The standard in the Smalltalk world is Monticello, I hope they added good tooling around it (the implementation I've seen was painful if you had ever used mercurial, git or even SVN, but I don't know how things are with Pharo)
Source control works similarly as to how it does with other languages. (The modified binary image thing was never the only, or the main, option).