Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

buildbranch

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

buildbranch

Publish a folder to the given build branch (like gh-pages).

  • 2.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
26
increased by52.94%
Maintainers
2
Weekly downloads
 
Created
Source

buildbranch

Publish a folder to the given build branch (like gh-pages).

NPM version Dependency Status devDependency Status Coverage Status Dependency Status

Usage

You can use this from the command-line or within your build system.

Command-line

First, install buildbranch globally:

npm install buildbranch -g

Then, from your master branch, run buildbranch with the branch and directory you want to publish. It will default to gh-pages and www.

buildbranch gh-pages www example.com

All arguments are optional, the defaults being:

  • branch: 'gh-pages'
  • folder: `'www'´
  • domain: ''
Skipping the pre-commit hook

buildbranch will run git commit in the given branch. You might want to skip the pre-commit hook if there is one. This can be archived by adding another command line argument:

buildbranch gh-pages www example.com no-verify

Actually, anytime four arguments are passed, git commit will be run with --no-verify, skipping the pre-commit and commit-msg hook, it does not matter if you pass no-verify or any other non-empty string as the fourth argument.

buildbranch gh-pages www example.com no-verify

If you want to skip have --no-verify but do not want to specify a domain, use

buildbranch gh-pages www '' no-verify

Build System

First, install buildbranch as a development dependency:

npm install buildbranch --save-dev

Then, use it in your build system:

  buildBranch({
    branch: 'gh-pages',
    remote: 'origin',
    ignore: ['.git', 'www', 'node_modules'],
    folder: 'www',
    domain: 'example.com',
    noVerify: false
  }, function(err) {
    if(err) {
      throw err;
    }
    console.log('Published!');
  });

For example in gulp you can do it like this:

var gulp = require('gulp');
var buildBranch = require('buildbranch');

gulp.task('gh', ['build'], function(done) {
  buildBranch({ folder: 'dist' }, done);
});

API

buildBranch(options, callback)

options

Type: Object

Required. An object containing the following options.

options.branch

Type: String Default: 'gh-pages'

The branch on wich to publish.

options.remote

Type: String Default: 'origin'

The remote repository on wich to publish.

options.folder

Type: String Default: 'www'

The folder in wich the build is.

options.domain

Type: String

The domain name that will fill the cname file.

options.cname

Type: String Default: 'CNAME'

The name of the file enabling custom domain name on you build platform.

options.commit

Type: String Default: 'Build $'

The commit label, the first $ occurrence in the given string will be replaced by the current date.

options.cwd

Type: String Default: process.cwd()

The working directory (root of the git repo).

options.ignore

Type: Array

A list of files to ignore. 'node_modules' and '.git' will be automatically added to the ignore list.

options.noVerify

Type: Boolean Default: false

Whether or not to add --no-verify when running git commit (skipping the pre-commit and commit-msg hook).

callback

Type: Function

Required. Called when the publication is done.

License

MIT

Keywords

FAQs

Package last updated on 15 Mar 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc