Git Accessor
The goal of this project is to implement an object-oriented interface to Git, so that one can read and manipulate a repository from Smalltalk:
git := GitRepository on: '~/example.git'.
git add: (GitFile named: 'hello.txt' contents: 'hello world').
git commit: 'initial commit'.
git tag: 'foo'.
git commits. -> { GitCommit named: 'initial commit' }
git branches. -> { GitBranch named: 'master' }
git tags. -> { GitTag named: 'foo' }
The project includes the implementation of a flexible and extensible object model that accesses and manipulates the internal directory and file structure of Git. The result of this project would be a new highly efficient backend for Monticello 2. Furthermore the Moose platform could benefit from a new way to import and export models.
Contact: Lukas Renggli