Scan local or remote git repositories for history divergent from origin
Project description
Git-Scan
Git-Scan is a command-line utility to scan local or remote git repositories for history that is divergent from the remote branch. It is particularly useful when dealing with multiple git repositories across multiple machines where pulls and pushes are missed, stashes are forgotten about, files are left untracked, etc.
Features
- Scan repositories for missing push & pulls, uncommited changes, untracked files, leftover stashes, and dangling branches
- Automatically pull or push a group of repositories
- Open repositories in need of changes in TMUX windows
- Execute over SSH to git-scan on a different computer
- Configuration file to list scannable repositories
Usage
To run a git-scan
git-scan [--push] [--pull] [--repo] [--tmux] [--ssh]
where the optional arguments are
push:push repository changes if ahead of remotepull:pull repository changes if behind remote and there are no merge conflictsrepo:list of repositories to scan (defaults to all in the configuration file)tmux:open all repositories with problems to fix in a TMUX windowssh:run the git-scan on the provided ssh host
To add a repository to the list of scannable repositories
git-scan add /path/to/repository
To remove a repository
git-scan remove /path/to/repository
To list all scannable repositories
git-scan list [--resolve]
Installation
Git-Scan can be installed with pip
pip install git-scan
If installed with the --user flag, make sure to add ~/.local/bin to your PATH
Configuration File
A configuration file located at ~/.config/git-scan/git-scan.conf is created.
This is a TOML file listing the scannable repositories:
repositories = ["/path/to/repository_1", "/path/to/repository_2"]
The config file can be editted manually or changed using the add and remove commands.
Glob patterns and tilde expansions are allowed, i.e. "~/path/to/repos/*"
License
Git-Scan is licensed under the terms of the MIT license.
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 git-scan-0.2.1.tar.gz.
File metadata
- Download URL: git-scan-0.2.1.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
628e43bed2d0a4e18994879b4982a403c93e73805f4384d441ea408dcff46574
|
|
| MD5 |
4875163b4d76542055d4cf6e40abd72b
|
|
| BLAKE2b-256 |
a884480cfcfa2fcd41cd9da516e53f9be24dfe296e1da1accbad0604bbb9f1dd
|
File details
Details for the file git_scan-0.2.1-py3-none-any.whl.
File metadata
- Download URL: git_scan-0.2.1-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e329258f672826d9d588aac6098f6c7c5ae25f39e68ae42003cb614b1450f833
|
|
| MD5 |
cdfd80e9b675b7c084b5e8fab4800ed1
|
|
| BLAKE2b-256 |
37e51c521620c5887bb7102349ecc1773d979988aa6e9bd6b08fbdbda81c2bc7
|