update pijul from git.
Project description
git-pijul
update pijul from git.
install
pip install git-pijul
usage
Usage: git-pijul [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
create Create a new pijul repository and import a linear history
plot Display current changes as graphviz file (git pijul plot | dot...
shallow create a new pijul repository from the current revision...
update Update a repository created with git-pijul
git-pijul create
finds an ancestry-path with git rev-list --ancestry-path --no-merges --topo-order
. It will then checkout each revision into a temp
directory and add it to pijul. Non-linear history is dropped. The last
revision/patchset will be forked into a channel.
git-pijul update
finds in git the shortest path from the current git-revision
to a existing channel and updates pijul from that channel.
git-pijul shallow
create a new pijul repository from the current revision without
history.
git-pijul plot
plots dependencies of all changes, with -i
you can exclude changes from a
channel, usually the main
channel that contains published changes. This allows
you to select the changes you want to publish.
example
$> git clone https://github.com/ganwell/git-pijul
Cloning into 'git-pijul'...
remote: Enumerating objects: 49, done.
remote: Counting objects: 100% (49/49), done.
remote: Compressing objects: 100% (22/22), done.
remote: Total 49 (delta 24), reused 49 (delta 24), pack-reused 0
Receiving objects: 100% (49/49), 44.34 KiB | 1.93 MiB/s, done.
Resolving deltas: 100% (24/24), done.
$> cd git-pijul
$> git pijul create
Using head: 3bc7b1e8618681d4e3069989160998f7d366f08c (HEAD)
Using base: b215e32b5d60eb19a0676a2b9072ac7a352e1c50 ('--root')
100%|███████████████████████████████████████████████|
29/29 [00:02<00:00, 10.17it/s]
Please do not work in internal in_* channels
If you like to rename the new work channel call:
pijul channel rename work_3bc7b1e $new_name
$> pijul channel
in_3bc7b1e8618681d4e3069989160998f7d366f08c
main
* work_3bc7b1e
$> git pull
Updating 3bc7b1e..7ec741d
Fast-forward
README.md | 2 +-
git_pijul.py | 50 ++++++++++++++++++++++++++++++++++++++------------
pyproject.toml | 2 +-
3 files changed, 40 insertions(+), 14 deletions(-)
$> git pijul update
Using head: 7ec741d2e7b8c5c0ef7302d47e1b8af04c14b54d (master)
Using base from previous update: 3bc7b1e8618681d4e3069989160998f7d366f08c
100%|███████████████████████████████████████████████| 1/1 [00:00<00:00, 8.20it/s]
Please do not work in internal in_* channels
If you like to rename the new work channel call:
pijul channel rename work_7ec741d $new_name
$> pijul channel
in_3bc7b1e8618681d4e3069989160998f7d366f08c
in_7ec741d2e7b8c5c0ef7302d47e1b8af04c14b54d
main
work_3bc7b1e
* work_7ec741d
changes
0.3.0
- 0.3.0 git-pijul now creates a work and an internal channel. The internal channel should not be used by the user. I think this is the first step to allow back-sync.
0.4.0
- stop using .ignore, instead add root directory items one by one, ignoring .git
0.5.0
- allow to plot changes with
git pijul plot | dot -Txlib
0.6.0
git-pijul plot
plots dependencies of all changes, with-i
you can exclude changes from a channel, usually themain
channel that contains published changes. This allows you to select the changes you want to publish.
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
Built Distribution
Hashes for git_pijul-0.6.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07abd8675eec6736b731c9a339e0efd80381fe38cf4e2f6d1ee8c944768fc896 |
|
MD5 | 7f085c7a865608520ccc8d226d12d407 |
|
BLAKE2b-256 | b860a7b3b228e64045138c08db52d5b2e62b15b7109d0dcdfd8386878ec52b71 |