Manage, update and clone personal and organizational Github repositories.
Table of Contents
npm install -g github-manager
yarn global add github-manager
Gitman is a tool for working with multiple local git and remote Github repositories. Many developers manage multiple repositories in one folder and sometimes split personal repositories and organizational repositories to separate folders.
When Gitman is run in a folder, it looks for a
.gitman-config.json file. If the file does not exist, it asks the user to define the scope of the current folder: managing personal or organizational repositories.
Once Gitman knows the scope, it shows the list of locally cloned repositories inside the folder, and also shows a list of remotely available repositories (personal and organizational).
Updating local repositories and cloning remote repositories is as easy as running
gitman in the folder to see the UI, or
gitman update to directly update existing local repositories.
gitman to start managing your local and remote repositories (make sure you're in a folder that contains the repositories).
When run for the first time, Gitman will ask some configuration questions.
To update a list of preselected local repositories, run the following. If it's the first
update ever in a folder, Gitman will ask you to select a list of repositories:
To forcefully update all local repositories in the folder:
gitman update --all
To confirm the list of repositories prior to the update process, add
gitman update --confirm
gitman update --all --confirm
Gitman uses two separate config files in parallel:
- A global config file that is located in an operating system user folder.
- A local config file that is located in the folder that Gitman was ran in.
When Gitman is run for the first time ever on a computer, it asks questions to configure both the global and local config files. When Gitman is run for the first time in a certain folder, it asks questions to configure the local config file for that folder.
Here are some details what is being saved in the config files.
- Github Token - A user generated Github Personal Access Token.
- Folder Type - Whether the current folder contains personal or organizational repositories.
- Starred Repositories - A list of select repositories that can be updated in batch by running
gitman updatein that folder.
Set a Github Personal Access Token (you can create one at https://github.com/settings/tokens):
gitman --set-token <token>
Clear a preset access token:
Select repositories to update with
gitman update --select
Reset Gitman current folder configurations (personal or org, update selections, etc.)
Reset all of Gitman configurations (global and current folder):
gitman reset -global