On 22 May 2018 at 23:23, Tim Mackinnon <tim@testit.works> wrote: > Hi - when trying out the new Iceberg with a bunch of developers and > explaining the challenges of integrating git and files into a smalltalk > realm of the image - there was a lot of interest in how this works. > > When you clone - you obviously see a series of files (in Tonel - nice) > that are then brought into your image. If you edit a file like Readme.md > (using a markdown editor) you will notice that git status will show you > that this file has changed. However if you then edit some methods - and > then look in the file system - git status doesn’t show these? This in > retrospect possibly feels weird - or does it? I’m not sure anymore - and > was wondering if there was a specific reason behind not mirroring code > changes back to the file system as they happen? >
I guess the conceptual model they have might be of Pharo as a text editor directly changing the files. Its interesting to consider how that would operate. Changes are immediately reflected in Epcia files, and used to be immediately written to ".changes" file, so it seems possible. More interesting is what to do if the text file is edited outside Pharo. If Pharo could observe this and then recompile the new file, we might suddenly have a workable "external editor" workflow, lack of which is a common complaint by some. cheers -ben > > When you branch in Pharo, a command line git status does show that change > - so some things clearly are being mirrored, just not code (Which I’m guess > happens briefly when you click commit?). > > I’m curious now to understand the tradeoffs. > > Tim > > p.s. it is very nice for small private projects, to use a git client on > your phone - edit a method or two on the train, commit your changes and > then see your CI build the results and deploy a new website by the time you > get off… yes its not the rich smalltalk environment for bigger changes - > but tiny stuff, its quite nice to fallback on the traditional way. > > >