Skip to content
This repository has been archived by the owner on Oct 20, 2020. It is now read-only.

A collection of gulp tasks with shortcuts and automation to help you manage your GitHub repository based on semantic release (WARNING: STILL NOT READY FOR PRODUCTION USE)

License

klarkc/gulp-github-automator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gulp-github-automator

Travis David deps Codacy Coverage Node Version

NPM

It"s a collection of gulp tasks with the objective of simplify the workflow of your application development in your GitHub repository.

WARNING: STILL NOT READY FOR PRODUCTION USE, WE ARE NOT RESPONSIBLE FOR ANY KIND OF PROBLEMS WITH THE REPOSITORIES

The principle is simple: Your master branch is always in sync with your production environment, and develop branch is used as base of new features. With this We can automate the changelog file generation and versioning info. New versions of your application are created when needed as well the releases and tags on your GitHub repository.

Git Flow

More details About Semantic Versioning

Usage

In your gulpfile.js:

var automatorTasks = require("gulp-github-automator");

// Load tasks
automatorTasks({
    preset: "angular",
    testTask: "test",
    token: process.env.GITHUB_TOKEN,
});

Options

preset

Type: string Possible values: "angular", "atom", "codemirror", "ember", "eslint", "express", "jquery", "jscs", "jshint"

Is the pattern of the commits messages, with this you can automate the changelog generation and define automatic version detection. The default one is the angular preset.

testTask

Type: string Default: undefined

Is the task that you are using to test things before the submission of your code. It"s optional, and if not defined the test will be skiped.

token

Type: string

You can get the token in your settings page in GitHub. Security concerns: If you put the token directly in your source code everyone with access to the code will be able to use this token.

versionFiles

Type: array Default: ["package.json", "bower.json"]

Where github-automator will search for versioning strings for the automatic version bump.

Tasks

To run a task just type $ gulp taskname in your project directory.

init

Configure your repository with needed files and branches and bump the first version from the one in your package.json manifest.

start-feature

Start a new branch from develop branch with a new feature. Use -n argument to define the name (or reference) to the new feature. You will be asked if you want to send the feature branch to the origin repository.

finish-feature

Merge the given feature branch (use -b argument to define the branch name). With testTask argument you can define a gulp task to test your application before we finish.

start-release

Start a new branch with all features from develop branch that will be merged in future to the master branch. You will be asked if you want to send the release branch to the origin repository.

finish-release

Merge the given release branch (use -b argument to define the branch name). With testTask argument you can define a gulp task to test your application before we finish.

start-hotfix

Start a new branch from the master branch. You will be asked if you want to send the hotfix branch to the origin repository.

finish-hotfix

Merge the given hotfix branch (use -b argument to define the branch name). With testTask argument you can define a gulp task to test your application before we finish.

About

A collection of gulp tasks with shortcuts and automation to help you manage your GitHub repository based on semantic release (WARNING: STILL NOT READY FOR PRODUCTION USE)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published