A lightweight wrapper around git subtrees that lets you work with many subtrees at once
Project description
Chainsaw
A lightweight wrapper around git subtrees that lets you work with many subtrees at once
Installation
pip install git-chainsaw
Dependencies
- git v1.7.11 or above
- make sure the
git
command is recognized wherever you plan to run this - python3 + pip
Usage
Example chainsaw.json
[
{
"prefix": "bingo",
"remote": "https://github.com/nasa/bingo.git",
"branch": "master"
},
{
"prefix": "trick",
"remote": "https://github.com/nasa/trick.git",
"branch": "master"
}
]
Adding subtrees:
# From a predefined chainsaw.json file
chainsaw add --all [--squash]
# From scratch (Subtrees will be added to chainsaw.json)
chainsaw add bingo https://github.com/nasa/bingo.git master [--squash]
Updating subtrees:
# Pull specific subtrees only
chainsaw pull bingo trick [etc.] [--squash]
# Pull changes from all subtrees
chainsaw pull --all [--squash]
Updating subtree remotes:
# Push changes for specific subtrees only
chainsaw push bingo trick [etc.]
# Push changes for all subtrees
chainsaw push --all
List subtrees:
# Print the prefix of each subtree found by git log
chainsaw ls
# Graph subtree history
chainsaw graph
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
git-chainsaw-0.0.6.tar.gz
(3.9 kB
view hashes)
Built Distribution
Close
Hashes for git_chainsaw-0.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 728ce45bbce0aec35270972121ebe6801a82304029840887444f6b1ddad6bdec |
|
MD5 | b03291fe43b526d1b686322dbf6b70e7 |
|
BLAKE2b-256 | c498097023ec7adac0da81721aaa22249b8472ed4f69e5de4b2ea2707334a971 |