A&O 2008-05-26: GitSharp low level API

igorgue's picture

Achievements
~~~~~~~~~~~

* Setup our development infrastructure:
* http://github.com/igorgue/git-sharp
* http://devel.unionccs.net/projects/show/git-sharp

* Define our approach with mentor and fellow student(Hector, the guy that will be doing the high level API)

* Study some the git implementation(work in progress):
* CGit (commonly known as plain git)
* jGit (implementation created by a CGit developer)
* ruby-git ruby implementation
* git-ruby another ruby implementation

* Initial work on Git core, some classes infrastructure defined, also Hashing is done with the help of Hector, check github repo(git clone git://github.com/igorgue/git-sharp.git).

* Core diagram: http://devel.unionccs.net/projects/git-sharp/documents missing Index API

* Some work done on the API Design: http://devel.unionccs.net/wiki/git-sharp

Objectives
~~~~~~~~

* Finish design… we just have to do this to continue

* Somethings have to be figured out first:
* Create a base for Hector work(so he can develop the high level part)
* How does Index works and how are we going to implement it(its different on every implementation)

* Continue working on “Core” which is Object, Tree, Commit, Blob and Tag

* Start work in Index

Bonus
~~~~~

* I have been getting dirty with ‘unsafe’ code, anyway we are not going to use any unsafe code if its not needed(and it should not be needed)

* Learned how to correctly use Mono’s encryption API to allow me to create the SHA1

Love
~~~~

* massi: Even though we have talked just a little, he gave us very nice tips :)

* spouliot: He told us to use SHA1.Create() instead of SHA1Managed or SHA1CryptoServiceProvider

* alan(monotorrent guy): This guy did some cool stuff in Mono’s SHA1 :) thanks

Notes
~~~~~

* Everybody twitts these days… even Git#: http://twitter.com/gitsharp like I twitt before he is a lonely guy… so he will not follow anybody :) or even reply to anybody

Organization: Mono Project Original: Source