GitHub entities made available as lazyload classes
Project description
gh-tt
This utility is desinged as a GitHub Command Line extension.
Install:
gh extension install thetechcollective/gh-tt
The extension requires that you have write access to projects too
Run gh tt -h to learn the syntax
The extension has three subcommands workon, wrapup and deliver.
usage: gh tt [-h] [-v] {workon,wrapup,deliver} ...
positional arguments:
{workon,wrapup,deliver}
workon Set the issue number context to work on
wrapup Collapse dev branch into one commit, check or set the commit message
deliver Create the pull request for the current issue. Rebase and push the branch
options:
-h, --help show this help message and exit
-v, --verbose Enable verbose output
--help
You can always use the switch --help to learn details about a specific syntax
--verbose
You can always use the switch --verbose to have the extensions print out all underlying calls to the OS.
gh workon
workon takes an --issue switch. you can use if you want to work on a specific issue in the current repo
E.g. gh workon --issue 13
Or you can use the --title switch if you want to work on an issue that doesn't yet exist, you apply the title for the issue you want created.
e.g. gh workon --title "Some new issue"
usage: gh tt workon [-h] [-v] [-i ISSUE | -t TITLE]
options:
-h, --help show this help message and exit
-v, --verbose Enable verbose output
-i ISSUE, --issue ISSUE
Issue number
-t TITLE, --title TITLE
Title for the new issue
In either case you will end up on a development branch referencing the issue. If a branch already exist either locally or remote, you'll reuse that if not a new branch will be created on the issue.
Workon will set the Status in the GitHub Project to In Progress and the Start date to today.
gh wrapup
usage: gh tt wrapup [-h] [-v]
options:
-h, --help show this help message and exit
-v, --verbose Enable verbose output
wrapup will collapse you current branch into just one commit, and make sure that the commit message contains one of the closing keywords (e.g. "resolves #") so the issue will be closed when the commit arrives at the default branch (main).
In order to deliver you should be aware that a rebase against the default branch (main) is also needed, but it's not included in the automated wrapup process, simply because this is potentially an operation that will change the content of your branch. For that reason you should take full responsibility of that process yourself. In other words make it a habit to run rebase before the wrapup:
git rebase main
gh tt wrapup
gh deliver
usage: gh tt deliver [-h] [-v] [--title TITLE]
options:
-h, --help show this help message and exit
-v, --verbose Enable verbose output
--title TITLE Title for the pull request - default is the issue title
deliver will try to rebase your branch and push it to origin if it succeeds it will create a pull request on the branch - if it doesnt exist already.
Feature request and discussions
The Issues are open on the repo: thetechcollective.gh-tt. If you experiencve any erros, misbekaviour or if you have feature requests, feel free to join the discussion.
Note
It's written in Python and runs in a pipenv so it doesn't leave any footprint or alterization to your own, current Python setup. All requirements besides python3 are managed independenly by the script itself.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ghobjects-0.0.3.dev5.tar.gz.
File metadata
- Download URL: ghobjects-0.0.3.dev5.tar.gz
- Upload date:
- Size: 30.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
707fe34e03591cf5342f944d690be0c3119250c2631d61964d236577aa012e9a
|
|
| MD5 |
e956ad2fe55627153e330f057f024196
|
|
| BLAKE2b-256 |
4287cd6dc47816fc8d7ed1e07dc09c5a796f028f77eea222ce3ae2af3e70509f
|
File details
Details for the file ghobjects-0.0.3.dev5-py3-none-any.whl.
File metadata
- Download URL: ghobjects-0.0.3.dev5-py3-none-any.whl
- Upload date:
- Size: 26.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b207f915277e780962b09374edcadee4b766b98df2c62e7fecffe10fcef532ad
|
|
| MD5 |
86190516311049a9db01ce8cde4c74cd
|
|
| BLAKE2b-256 |
aa77ba0153c1aa53e172cf711561c6dd31bfc1b5e690e8630637a2b021faa022
|