{"thread":{"id":"27397","subject":"End year project : minimal Git client based on libgit2","startedAt":"2011-05-18T16:42:40Z","lastAt":"2011-05-19T16:15:34Z","messageCount":3,"participants":["Marc Pegon","Andreas Ericsson","Romain Geissler"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"168144","messageId":"BANLkTinGPvekMDT5nmsFQp3SpR_QOYq+UA@mail.gmail.com","threadId":"27397","inReplyTo":null,"subject":"End year project : minimal Git client based on libgit2","fromName":"Marc Pegon","fromEmail":"pegon.marc@gmail.com","sentAt":"2011-05-18T16:42:40Z","receivedAt":"2011-05-18T16:42:40Z","isPatch":false,"sender":{"key":"pegon.marc@gmail.com","avatar":null},"body":"Hello everyone. We are a team of four students from a French school of\nengineering (Ensimag: http://ensimag.grenoble-inp.fr/). To end the\nschool year, we are supposed to work on a four-week full-time project,\nunder the supervision of Matthieu Moy, who has been following Git's\ndevelopment for quite a few years now. We thought it would be\ninteresting to contribute to git/libgit2. We are especially interested\nin one of the GSoC2011 ideas : Build a minimal Git client based on\nlibgit2 (http://git.wiki.kernel.org/index.php/SoC2011Ideas#Build_a_minimal_Git_client_based_on_libgit2)\n\nWe started by taking a look at libgit2 API and Git source code, and we\nhave already begun to write some (quick and dirty) code.\nWe would like to know more about your expectations around the\n\"minimal\" git client. What are the key features to implement ?\nAccording to the GSoC proposal, we should implement some high level\nfunctionalities (push, commit, branch...). Perhaps we should\nconcentrate on more \"plumbing\" commands ?\n\nRegards,\n\nBettaoui Nassima\nGeissler Romain\nGlesser David\nPegon Marc.\n"},{"id":"168188","messageId":"4DD4B648.8040509@op5.se","threadId":"27397","inReplyTo":"BANLkTinGPvekMDT5nmsFQp3SpR_QOYq+UA@mail.gmail.com","subject":"Re: End year project : minimal Git client based on libgit2","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2011-05-19T06:18:48Z","receivedAt":"2011-05-19T06:18:48Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"On 05/18/2011 06:42 PM, Marc Pegon wrote:\n> Hello everyone. We are a team of four students from a French school of\n> engineering (Ensimag: http://ensimag.grenoble-inp.fr/). To end the\n> school year, we are supposed to work on a four-week full-time project,\n> under the supervision of Matthieu Moy, who has been following Git's\n> development for quite a few years now. We thought it would be\n> interesting to contribute to git/libgit2. We are especially interested\n> in one of the GSoC2011 ideas : Build a minimal Git client based on\n> libgit2 (http://git.wiki.kernel.org/index.php/SoC2011Ideas#Build_a_minimal_Git_client_based_on_libgit2)\n> \n\nCool project :)\n\n> We started by taking a look at libgit2 API and Git source code, and we\n> have already begun to write some (quick and dirty) code.\n> We would like to know more about your expectations around the\n> \"minimal\" git client. What are the key features to implement ?\n> According to the GSoC proposal, we should implement some high level\n> functionalities (push, commit, branch...). Perhaps we should\n> concentrate on more \"plumbing\" commands ?\n> \n\nIf you can make the plumbing commands work it should be trivial to\nscript the other tools on top of the plumbing.\n\nOtoh, coding up the commands currently implemented as scripts in C\nwith libgit2 as backend would increase the chance of acceptance into\ngit.git proper, since you'd then be doing something worthwhile for\nthe git core.\n\nThen again, creating bindings into other languages and writing up\nthe minimal git in python or some such would also be extremely\nuseful and worthwhile, and probably faster than writing the minimal\ngit from scratch in C as well.\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n\nConsidering the successes of the wars on alcohol, poverty, drugs and\nterror, I think we should give some serious thought to declaring war\non peace.\n"},{"id":"168221","messageId":"D1A000B1-992A-4671-822B-6B8FB2EBF8B3@gmail.com","threadId":"27397","inReplyTo":"4DD4B648.8040509@op5.se","subject":"Re: End year project : minimal Git client based on libgit2","fromName":"Romain Geissler","fromEmail":"romain.geissler@gmail.com","sentAt":"2011-05-19T16:15:34Z","receivedAt":"2011-05-19T16:15:34Z","isPatch":false,"sender":{"key":"romain.geissler@gmail.com","avatar":null},"body":"Hello,\n\nIt seems that most of the currently scripted commands can't be implemented with libgit2 as it's still not mature enough to handle it (eg the whole merge part is still missing), though we might have missed something.\n\nThus we've chosen to first focus on two simple plumbings: commit-tree and cat-file as there is the material for it in libgit2 and the command signature is restricted to only a few parameters. When it's done, we'll try to compare the efficiency of this partial port (works well and quickly). Thanks to that background, it might be easier to move on other plumbings.\n\nRomain Geissler\n\n(Sorry for answering you directly, i should have checked the mail recipient before sending it !)"}]}