I created a python module called git-pijul. It does a similar thing as
pijul git. Unfortunately
pijul git still crashes for my repos. Since I am to only user you can expect bugs. For example I never use the arguments
--head/--base, so this is more or less untested.
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.
I didn’t find
git-pijul in my google search, but there is a topic called Adventures in converting: git-pijul. Which discovered a minute ago. Let me know if git-pijul is a thing. I choose the name so is can type
git pijul which updates pijul up to my current revision.
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
git-pijul plotplots dependencies of all changes, with
-iyou can exclude changes from a channel, usually the
mainchannel that contains published changes. This allows you to select the changes you want to publish.