Skip to main content

Add your description here

Project description

git-squared (gg)

A CLI for stacked git workflows

The program is called gg and has the following commands:

% gg 
usage: gg [-h] command ...

positional arguments:
  command
    ls        List all branches and current status
    rm        Remove (delete) this branch or a named branch
    go        Go to a branch if it exists. Otherwise, create a new branch tracking the current branch.
    co        Alias for `go` (`co` is short for `checkout`)
    restack   Restack this branch and all children onto its tracking branch
    r         Alias for `restack`
    status    Show git status (alias for `git status`)
    add       Add files to the staging area (alias for `git add`)
    commit    Commit the staged changes (using amend, ie one commit per branch)
    c         Alias for `commit`
    down      Move down the tree from the current branch; ie, move to the parent branch
    up        Move up the tree from the current branch; ie, move to the child branch
    s         Submit this branch to the remote (`s` stands for `submit`)
    ss        Submit this branch and its children to the remote (`ss`stands for `submit stack`!)


optional arguments:
  -h, --help  show this help message and exit

commands

gg ls shows the stack

% gg ls

◯ c
◯ b
│ ◯ d
◯─┘ a
│ ◯ aaaa
│ ◯ aaa
│ ◯ aa
│ │ ◯ t1
│ │ │ ◯ t2
│ │ │ │ ◯ t3
│ │ ◯─┴─┘ test
└─┴─┴─● main

gg go moves around the stack (or creates new branches in the stack)

% gg go aa

🏁 Checked out aa
...
│ ◯ d
◯─┘ a
│ ◯ aaaa
│ ◯ aaa
│ ● aa
...
└─┴─┴─◯ main


gg up/gg down move up and down the stack

% gg up

🏁 Checked out aaa
...
│ ◯ d
◯─┘ a
│ ◯ aaaa
│ ● aaa
│ ◯ aa
...
└─┴─┴─◯ main

% gg down

🏁 Checked out aa
...
│ ◯ d
◯─┘ a
│ ◯ aaaa
│ ◯ aaa
│ ● aa
...
└─┴─┴─◯ main

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

git_squared-0.1a1.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

git_squared-0.1a1-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file git_squared-0.1a1.tar.gz.

File metadata

  • Download URL: git_squared-0.1a1.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for git_squared-0.1a1.tar.gz
Algorithm Hash digest
SHA256 78cae08b26b27980d872aef91646da84466480e6cbbb45ea03075ca93119794f
MD5 f3a8a4ab804b6803402165a7185e9ce0
BLAKE2b-256 7741450bbb49b24dfeefbd129e072e54962bb3b75c5478a5bfd25ca2cf26f7e2

See more details on using hashes here.

File details

Details for the file git_squared-0.1a1-py3-none-any.whl.

File metadata

  • Download URL: git_squared-0.1a1-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for git_squared-0.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 aa28288272c5037e88354d9b5f73636c8002431de61eae67e3c303a4057dfdbf
MD5 558093ece6b1a448daaca74fb1345391
BLAKE2b-256 68968d7b3f92fccbd45426a89218697752f77bc4c6e490b663c3824e2af2a8d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page