forked from enviPath/enviPy
Current Dev State
This commit is contained in:
92
static/js/ketcher2/node_modules/guppy-cli/bin/index.js
generated
vendored
Executable file
92
static/js/ketcher2/node_modules/guppy-cli/bin/index.js
generated
vendored
Executable file
@ -0,0 +1,92 @@
|
||||
#!/usr/bin/env node
|
||||
/* global error */
|
||||
'use strict';
|
||||
|
||||
require('shelljs/global');
|
||||
var fs = require("fs");
|
||||
var gup = require('../');
|
||||
var yargs = require('yargs')
|
||||
.usage('Usage: $0 <hookname>|all [-d <path>]')
|
||||
.command('hookname', 'Install a git-hook by name, for a list, see --hooks')
|
||||
.command('all', 'Install all available git-hooks (use caution)')
|
||||
.alias('d', 'dest')
|
||||
.describe('d', 'Destination path for git-hook (default: ./.git/hooks/)')
|
||||
.describe('hooks', 'Print a complete list of git-hooks')
|
||||
.help('h')
|
||||
.alias('h', 'help')
|
||||
.example('$0 pre-commit')
|
||||
.example('$0 pre-commit -d some/where')
|
||||
.example('$0 all')
|
||||
.version(function() {
|
||||
return require('../package').version;
|
||||
})
|
||||
.epilogue('Existing git-hooks will be backed up the first time. If a backup ' +
|
||||
'already exists, it will not be overwritten.' +
|
||||
'\n\nhttps://github.com/therealklanni/guppy-cli');
|
||||
var argv = yargs.argv;
|
||||
|
||||
var hooks = ' applypatch-msg, commit-msg, post-applypatch, post-checkout, ' +
|
||||
'post-commit,\n post-merge, post-receive, post-rewrite, post-update, ' +
|
||||
'pre-applypatch,\n pre-auto-gc, pre-commit, pre-push, pre-rebase, ' +
|
||||
'pre-receive,\n prepare-commit-msg, update';
|
||||
|
||||
if (argv.hooks) {
|
||||
console.log('Available git-hooks are:\n' + hooks);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
var dest;
|
||||
|
||||
if (argv.dest) {
|
||||
dest = argv.dest;
|
||||
} else {
|
||||
var topLevel = exec('git rev-parse --show-toplevel', { silent: true })
|
||||
.output.slice(0, -1);
|
||||
if (test('-f', topLevel + '/.git')) {
|
||||
// this is a sub module
|
||||
var buf = fs.readFileSync(topLevel + '/.git', "utf8").trim();
|
||||
if (buf.substr(0,6) === 'gitdir') {
|
||||
topLevel = topLevel + '/' + buf.substr(8).trim();
|
||||
}
|
||||
dest = topLevel + '/hooks/';
|
||||
} else {
|
||||
dest = topLevel + '/.git/hooks/';
|
||||
}
|
||||
|
||||
if (error()) {
|
||||
console.error('fatal: Not a git repository (or any of the parent directories): .git');
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
var hook = argv._[0];
|
||||
|
||||
if (!hook) {
|
||||
yargs.showHelp();
|
||||
exit(2);
|
||||
}
|
||||
|
||||
if (hook.toLowerCase() === 'all') {
|
||||
gup.installAll(dest, function (err) {
|
||||
if (err) {
|
||||
console.error('fatal: ' + err.message);
|
||||
exit(3);
|
||||
}
|
||||
|
||||
console.log('guppy: Installed all git-hooks to: ' + dest);
|
||||
exit(0);
|
||||
});
|
||||
} else if (hooks.indexOf(hook) !== -1) {
|
||||
gup.install(hook, dest, function (err, results) {
|
||||
if (err) {
|
||||
console.error('fatal: ' + err.message);
|
||||
exit(4);
|
||||
}
|
||||
|
||||
console.log('guppy: Installed git-hook: ' + results);
|
||||
exit(0);
|
||||
});
|
||||
} else {
|
||||
console.error('fatal: Invalid hook name: ' + hook);
|
||||
exit(5);
|
||||
}
|
||||
Reference in New Issue
Block a user