npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

quick-git-hits

v0.1.1

Published

Simple node utility to do Git things in the current directory.

Downloads

31

Readme

quick-git-hits

Very small utilites for some common Git activities that you might want to automate during a Node workflow. Utterly without rhyme or reason in terms of what is included. Work in progress. Don't use. Don't even continue reading. What are you doing here? You definitely want nodegit and not this. It's big and featureful and who doesn't want that.

Requires

  • Node 0.10 (works in io.js i'm sure)
  • Git 1.5 or later if you want more metadata than "git is not installed"

Usage

var quickGitHits = require('quick-git-hits');

This object has some static methods on it.

quickGitHits.detectDirectory(dir, cb)

Get some metadata about the passed directory, including:

  • Whether Git is installed on the system (in the PATH that is)
  • Whether the current directory is inside a Git repository
  • The canonical remote URL for that repository
var detectGit = require('detect-git');

quickGitHits.detectDirectory( process.cwd(), function(err, metadata) {
    if (err) throw err;
    if (metadata.gitInstalled) {
        console.log('Git is installed! Good job.')
    }
    if (metadata.inGitRepo) {
        console.log('The current directory is inside a Git working tree. Go crazy!')
    }
    if (metadata.repositoryUrl) {
        console.log('The canonical remote for this repository is ' + metadata.repositoryUrl);
    }
});

Arguments

  • dir (string) A directory, often just process.cwd().

  • cb (function) A callback. The callback will be called Node-style, with any errors as the first argument, and with a plain object with up to three properties as the second:

  • gitInstalled true if Git was found in the path

  • inGitRepo true if the current directory is in a Git repo (does not determine whether the current dir is in the index, though)

  • repositoryUrl Commonly a repo has one and only one remote. This will be the URL. Under other circumstances it'll just be the URL of the first remote to be added.

quickGitHits.createRepoInDirectory(dir, opts, cb)

Create a repository in the passed directory. If opts.repositoryUrl is specified, add the specified URL as the remote origin.

var detectGit = require('detect-git');

quickGitHits.createRepoInDirectory( process.cwd(), { repositoryUrl: 'zetlen/quick-git-hits' }, function(err) {
    if (err) throw err;
    console.log('Repo created. Enjoy!');
});

Arguments

  • dir (string) A directory, often just process.cwd().
  • options (object) An object of options. The following properties work:
    • repositoryUrl (string) The URL to a remote repository that the new local repo should set as a remote.
  • cb (function) A callback. The callback will be called Node-style, with any errors as the first argument. If the first argument is null, you win.

License

ISC, which you'll have to look up. Beats the heck out of me.