On Mon, Oct 7, 2013 at 4:05 PM, Tim Smart <t...@fostle.com> wrote: > What would be some of the main pros / cons compared to > https://github.com/libgit2/node-gitteh ? I can start with the first one: > > * No compilation step / pure Javascript >
The biggest advantage is the flexible backend. JS-Git's core doesn't assume anything about your environment. It could run inside a webworker or in a node.js server. You could store your data in a remote S3 database or in a local Array object. You could communicate with remote servers using websockets, http, tcp, tls, or ssh or even invent a new protocol. This is the primary reason I didn't go with a llvm port of libgit2. The resulting code (beside being very large) would assume a lot about your platform and not be very flexible. Also js-git is pretty small. The git-browser app's JavaScript is only 24Kb when compressed. That includes all the UI code as well all of the js-git components it uses. The one con of all this is it's somewhat tricky to get started with js-git because you have to configure your platform and environment. This is why there are modules like "git-node" that makes all these decisions for you and provides a simple interface to program against. > > On Fri, Oct 04, 2013 at 03:43:06PM -0500, Tim Caswell wrote: > > Just wanted to send a node out that my js-git project has reached the > first > > milestone in functionality. This means you can use the library to: > > > > - Clone remote repositories over TCP, HTTP(s) and SSH. > > - Pull in incremental updates > > - Make shallow clones or clone only a specific branch or tag. > > > > Once you have a local repository, either created locally or cloned from a > > remote, you have full read-write access using low-level APIs. > > > > - Create git object (blob, tree, commit, tag) > > - Read git objects > > - Create and manage tags and branches > > - Walk history as a stream > > - Walk a file tree as a stream > > - Export the tree to real files > > > > There are numerous examples on the various js-git related packages linked > > to at the end of the README. > > > > Since this is the node list and js-git is not node-only, here are some > > possible use cases for js-git in node programs. > > > > - Use a git repo as a database for a web app. > > - Use js-git to fetch remote code for deployment tools > > - Scrape remote repos looking for data progamatically. > > - Whatever else you can think of. > > > > Currently I'm still working on reading pre-existing git repos (the code > > doesn't handle packfiles) and pushing back to remotes. That will all be > > part of milestone #2. > > > > My goal is to finish the first 4 milestones by new-years. At that point > it > > will be functional enough for full development workflow and all sorts of > > custom servers. > > > > https://github.com/creationix/js-git > > > > -- > > -- > > Job Board: http://jobs.nodejs.org/ > > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > > You received this message because you are subscribed to the Google > > Groups "nodejs" group. > > To post to this group, send email to nodejs@googlegroups.com > > To unsubscribe from this group, send email to > > nodejs+unsubscr...@googlegroups.com > > For more options, visit this group at > > http://groups.google.com/group/nodejs?hl=en?hl=en > > > > --- > > You received this message because you are subscribed to the Google > Groups "nodejs" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to nodejs+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/groups/opt_out. > > -- > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to nodejs@googlegroups.com > To unsubscribe from this group, send email to > nodejs+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to nodejs+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.