pinkluz / arcanist

Git local branch workflow manager.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Arcanist CLI

Git workflow tool based on the Phabricator workflow


Arcanist is an local git workflow management tool that is based around local branch management. This allows you to easily keep ideas separate and swich between branches pushing the changes up to other branches with cascade. Using this tool should help to keep PRs/Diffs/Whatever to smaller sizes that are more easily reviewable.

Downloads

You can find the latest release with several different binaries on the https://github.com/pinkluz/arcanist/releases page.

flow [branch] [upstream]

Outputs a graph of all your current branches that are tracking local branches to the CLI. When you pass a single argument to flow it will create a new branch and set it's upstream to the current branch. If the branch exists it will just check out that branch for you. If you pass two arguments to arc flow it will create a new branch and set it's upstream to the second argument instead of to the branch you are currently on.

Screen Shot 2021-07-01 at 6 56 21 PM

cascade

Rebase all branches that are downstreams of the branch you are currently on. If the rebase has conflicts it will abort the rebase and keep going letting the user know at the end which branches require manual intervention.

Screen Shot 2021-07-01 at 6 57 42 PM

prune

Delete all branches where all commits in the branch are already contained in the parent. It will additionally try to re-parent all branches so the branch doesn't fall out of the arc flow output. This may not be possible is all branches upstream of a branch are deleted.

Screen Shot 2021-07-01 at 6 58 58 PM

graft

Pull a branch from a given remote into your working tree.

diff / commit

coming soon.

About

Git local branch workflow manager.

License:MIT License


Languages

Language:Starlark 51.5%Language:Go 47.5%Language:Shell 1.0%