This package allows users to easily manage GitHub on their machines. Some features are aimed at developers while some are aiming novice users/non developers.
Examples of what can be done:
- commit, stage & push operation at once via interactive CLI
- pull (for current, multiple or all branches)
- clone a repository
- generate an SSH key and automatically work with it inside of
- generate a GPG key and automatically work with it inside of
- configure user globally or for a repository
git-assistso that it auto-pulls from multiple repository. This can also be scheduled to run on machine startup or following a cron pattern
via NPM (recommended)
npm i -g git-assist
Some other dependencies are also required for some of the utilities contained in this package to work. See here.
via install script
If you don't feel comfortable with the command line/you don't have
npm installed on your machine, you can use the install script (
install.sh) available in the easy-use folder (see docs to know how to use them).
git-assist following this method:
- download the appropriate collection of scripts for your OS following the appropriated link below
- extract this collection on your machine
- double click on
This will install
git-assist on your machine as well as all necessary system dependencies.
This script is part of a collection of scripts available here:
via CLI: you can type
git-assistto enter interactive mode. Otherwise if you know which command to call simply do
git-assist <command> <arguments>
- non-CLI usage: you can copy files from the easy-use folder and use them directly inside of your repository (see docs to know how to use them)
If needed, call
git-assist [-h, --help] <function_name> in order to get access to the help for
git-assist or any of its utilities!
You will find the process for creating an access token for your account here.
Until work has been done to automate dependencies installation on package installation (or suppress some of them), here are the dependencies that needs to be on your computer for this utility to work correctly:
gpg(to generate GPG keys)
ssh(to generate ssh keys)
- Linux only:
Password management is handled via
keytar (check it out here).
keytar is using system specific solutions in order to store your password in a secure way. This allows
git-assist to reuse your saved password when working with GitHub via HTTPS and not prompt you every time for it.
For Linux users: you may encounter some undesired behavior if you use
git-assist without a preconfigured keyring to store your passwords. It seems like
keytar is creating for you a default keyring with a set password if no default keyring was found on first run. This can lead users to not being able to unlock this keyring afterward and therefore freezes some applications.
Below are details on how to handle/prevent this situation.
seahorse on your system via your package manager to get access to a frontend to manage your keyrings easily.
It is recommended to perform this step before working with
git-assist if you don't have a keyring set up on your machine already.
seahorsevia your application manager
- click File > New
loginwhen prompted for the name of the keyring
- type a password that you will remember when prompted for a password
- back on the main page of
seahorse, right click on your newly created keyring and click on Set as default
If you started using
git-assist with no keyring configured it is possible that some of your apps may be frozen because the keyring would be locked (since you don't know the password to unlock it).
- go into
~/.local/share/keyringseither via your console and via your file explorer
- delete the file containing
defaultin its name and ending with
.keyring(via terminal or file explorer)
seahorsevia your application manager
- right click on the keyring containing
defaultin its name and click on
- when prompted, confirm deletion
- follow the steps 2 to 5 in the section above to create a new default keyring
||Manipulate SSH keys||Manipulate GPG key||Clone repositories||Easy push (git add/commit/push all in one via interactive CLI)||Easy pull (interactive CLI)||Automatically pull for repositories (on machine startup/schedule/etc). Offers configuration options||Prints
||Get help about
||Print current installed version of
|Work in progress|
|Not implemented/not working|
*Logo generated via Tailor Brands