2.2.2 • Published 4 years ago
git-snapshot v2.2.2
git-snapshot
git-snapshot
is a tool to take a snapshot of the directory and creates/updates another branch, like git subtree split --squash
.
Summary
git-snapshot
is a tool to take a snapshot of the directory and creates/updates another branch, like git subtree split --squash
.
git-snapshot
is a sub-command ofgit
- Take a snapshot of the directory as a commit
- Simple and fast
- Unlike
git subtree split
, you can split from the directory in which you want
To take a snapshot, subtree split
vs snapshot
subtree split | snapshot |
---|---|
git subtree split --rejoin --prefix=path/to/target snapshot | git snapshot --prefix=path/to/target --branch=snapshot |
:+1: Official command- Contain all history:-1: Long commit log:-1: No squash option:-1: No support for moving target directory | - No history:+1: Short commit log:+1: Fast operation:+1: Any target directory |
Installation
Global installation
Install globally (add to your PATH
) and you can use git-snapshot as a git sub-command.
$ npm install -g git-snapshot
Local installation
For Node modules projects we recommend installing git-snapshot locally.
$ npm install --save git-snapshot
Usage
CLI Usage
usage: git snapshot --prefix=<path> --branch=<branch> --message=<message>
[--tag=<tag>] [--remote=<repository>] [--dry-run] [--cwd=<path>]
Required
--branch, -b the name of branch for split to [string] [required]
Options:
--help, -h Show help [boolean]
--version, -v Show version [boolean]
--prefix, -p the name of the subdir to split out [string]
--message, -m commit message [string]
--author, -a override the commit author [string]
--force, -f allow force commit, tag, push [boolean]
--tag, -t tag name [string]
--remote, -r remote repository [string]
--dry-run, -d skip publishing [boolean]
--debug output debugging information [boolean]
--cwd, -c working directory [string]
Code Usage
const gitSnapshot = require('git-snapshot')
// Options are the same as command line, except camelCase
// gitSnapshot returns a Promise
gitSnapshot({
prefix: './Packages/SomePackage',
branch: 'upm',
message: 'Release 1.0.0',
author: 'snapshot',
force: false,
tag: '1.0.0',
remote: 'origin',
dryRun: false,
cwd: process.cwd(),
}).then(() => {
// git-snapshot is done
}).catch(err => {
console.error(`git-snapshot failed with message: ${err.message}`)
})
License
MIT
See Also
- GitHub page : https://github.com/mob-sakai/git-snapshot
- Changelog : https://github.com/mob-sakai/git-snapshot/blob/master/CHANGELOG.md
- npm page : https://www.npmjs.com/package/git-snapshot
- gitgraph.js (a git graph tool) : https://github.com/nicoespeon/gitgraph.js/tree/master/packages/gitgraph-js
- semantic-release (a npm release tool) : https://github.com/semantic-release/semantic-release
2.2.2
4 years ago
2.2.1
4 years ago
2.2.0
5 years ago
2.2.0-beta.2
5 years ago
2.2.0-beta.1
5 years ago
2.1.0
5 years ago
2.1.0-beta.4
5 years ago
2.1.0-beta.3
5 years ago
2.1.0-beta.2
5 years ago
2.1.0-beta.1
5 years ago
2.0.0
5 years ago
2.0.0-beta.4
5 years ago
2.0.0-beta.3
5 years ago
2.0.0-beta.2
5 years ago
2.0.0-beta.1
5 years ago
1.1.2
5 years ago
1.1.1
5 years ago
1.1.0
5 years ago
1.0.2
5 years ago
1.0.1
5 years ago
1.0.0
5 years ago