cross-platform git utilities for managing a large number of git repositories quickly
Project description
Git Utilities
Platform-independent (Linux/Mac/Windows) Git utilities, useful for managing large (100+) numbers of Git repos.
I use command-line git
because PyGit also requires command-line Git installed, and I don't need the advanced functionality.
A very important feature in
ListAllGithubRepos
is showing which forks of your repos have had changes "ahead of" your code. This shows your code is being improved, even if the forked repo didn't make a pull request. I don't know of any other easy way out there to find this.
Install
Install Git in a way accessible from the command line line
- Mac:
brew install git
- Linux:
apt install git
- Windows: command line Git.
- BSD:
pkg install git
python -m pip install -e .
Usage
I didn't know of any other easy ways to do these Git tasks:
gitbranch
Tells of any non-master branches under directory ~/codegit_filemode_windows
Sets all git repos to don't care permissions under directory ~/codegitemail
list all contributor email addresses. Optionally, amend email addresses for prior Git commits
GitHub
ListAllGithubRepos
Gives stats on GitHub repos for a particular user.
It requires extra prereqs via:
pip install -e .[github]
Sync large number of git repos
These assume numerous subdirectories under ~/code
or c:\code
. They
work very quickly for large numbers (100+) repos
gtps
check if any repos have pending changesgtpl
Git pulls all reposgtft
Git fetches all repos
You can place an empty file .nogit
in a subdirectory to skip pull
or push
.
Preview all changed Jekyll files
This is for a website made using Jekyll:
ActOnChanged -j
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.