872f2354c551c8d48de33fb23a97dcba1e769a0a
				
			
			
		
	@pushrocks/smartgit
smart wrapper for nodegit
Availabililty and Links
Status for master
Usage
We recommend the use of TypeScript for best in class intellisense
// import smartgit:
import { GitRepo } from 'smartgit';
// Initialize smartgit:
// -- note: there are 3 ways to initialize smartgit
// -- -- 1. with a existing Git repo
// -- -- 2. with a cloned Git repo
// -- -- 3. with a new Git repo
// -- 1. existing Git Repo:
let myExistingGitRepo = new GitRepo('/path/to/existing/git/repo/');
// -- 2. cloned Git Repo:
let myClonedGitRepo: GitRepo;
smartgit.createRepoFromClone('git@github.com:username/reponame.git').then(gitRepo => {
  // non blocking
  myClonedGitRepo = gitRepo;
});
// -- 3. new Git Repo
let myNewGitRepo: GitRepo;
smartgit
  .createRepoFromInit('/path/to/new/folder') // smartgit will create any new folder, be careful
  .then(gitRepo => {
    // non blocking
    myNewGitRepo = gitRepo;
  });
// Using smartgit instance
// -- most used actions
// -- all actions return promises, so make sure to use promise chaining for any dependent tasks
myExistingGitRepo.addAll(); // returns promise, stages all changed files
myExistingGitRepo.add(['relative/path/to/file.txt', 'another/file2.txt']); // returns promise, stages specific files
myExistingGitRepo.commit('my commit message'); // returns promise, commits staged files
myExistingGitRepo
  .status() // returns promise
  .then(status => {
    // Use TypeScript for status type information
  });
myExistingGitRepo.check(); // returns promise, checks repo health
myExistingGitRepo.remoteAdd('git@github.com:username/reponame.git');
Tip: use smartssh to setup your SSH environment
For further information read the linked docs at the top of this readme.
MIT licensed | © Lossless GmbH | By using this npm module you agree to our privacy policy
Description
				
					Languages
				
				
								
								
									TypeScript
								
								100%