0.3.1 • Published 10 years ago

gittle v0.3.1

Weekly downloads
7
License
Apache-2.0
Repository
github
Last release
10 years ago

Gittle

A simple Node.js wrapper for the Git CLI. The API uses promises. This library is used in Codebox.

Installation

npm install gittle

How to use it?

var Gittle = require("gittle");
  • Load a repository: var repo = new Gittle("./");
  • Clone a repository: Gittle.clone("https://github.com/FriendCode/gittle.js.git", "./test")
  • Initialize an empty repository: Gittle.init("./test")

Check out Authentication about how to configure https/ssh authentication for cloning.


Repository:

Status
  • Get status: repo.status()
Identity
  • Get identity: repo.identity(), Returns an Actor object
  • Set identity: repo.identify(actor), actor is an object like: {name: "", email: ""}
Push/pull
  • Pull: repo.pull(remote, branch)
  • Push: repo.push(remote, branch)
  • Fetch: repo.fetch(remote)

Check out Authentication about how to configure https/ssh authentication.

Commits

A commit is representated by a Commit object.

  • List all commits: repo.commits(start, limit, skip)
  • Commit changes: repo.commit(message, options)
Tags
  • List all tags: repo.tags()
  • Create a new tag: repo.create_tag(name, options)
  • Delete a tag: repo.delete_tag(name)
Branches

A branch is representated by a Head object.

  • List all branches: repo.branches()
  • Get a branch from its name: repo.branche(name)
  • Create a branch: repo.create_branch(name)
  • Delete a branch: repo.delete_branch(name)
Remotes
  • List all remotes: repo.remotes()
  • Add a remote: repo.remore_add(name, url)
  • Delete a remote: repo.remote_remove(name)

Commit

  • commit.id: (String) id for this commit
  • commit.author: (Actor) author of this commit
  • commit.commiter: (Actor) commiter of this commit
  • commit.message: (String) message for this commit
  • commit.authored_date: (String) date when the commit was authored
  • commit.committed_date: (String) date when the commit was commited
  • Get the files tree for this commit: commit.tree()
  • Get the parents commits: commit.parents()

Actor

  • actor.name: (String) name of this actor
  • actor.email: (String) email address of this actor
  • actor.hash: (String) hash of this actor (md5 hash of the email)

Ref

Class Head inherit from Ref.

  • ref.name: (String) name of this reference
  • ref.commit: (Commit) commit related to this ref.

Authentication

A last argument could be use for authentication on Gittle.clone, repo.push, repo.pull, repo.fetch:

{
    // SSH:
    'passphrase': "...",
    'refuseUnknownHost': true, // Default is false
    
    // HTTPS:
    'username': "...",
    'password': "..."
}
0.3.1

10 years ago

0.3.0

10 years ago

0.2.5

10 years ago

0.2.4

10 years ago

0.2.3

10 years ago

0.2.2

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.3

11 years ago

0.1.2

12 years ago

0.1.1

12 years ago

0.1.0

12 years ago