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.

Reply via email to