Table of Contents generated with mtoc
- gitrack
- About
- Badges
- Supported Platforms
- Installation
- Uninstall
- Usage
- About threads
- Dev
- Examples
- TODO
- License
Scan git repositories in your file system. Find untracked changes, diff files, and more.
Easy and simple. This tool was created just for fun and to practice Rust.
Implemented features:
- Scan for untracked changes in git repositories.
- Scan
.git
folders in your file system (with multithreads). - Diff files for untracked changes.
Language | |
Release | |
Code | |
CI - Build | |
CI - Release | |
CI - Test | |
Meta | |
Codecov | |
Downloads |
Arch | ARM64 | AMD64 |
---|---|---|
darwin | ✅ | ✅ |
linux | ✅ | ✅ |
$ cargo install gitrack
Or the binary:
$ curl --proto '=https' --tlsv1.2 -sSfL https://raw.githubusercontent.com/containerscrew/gitrack/main/install.sh | sh
cargo install gitrack@0.8.0
$ curl --proto '=https' --tlsv1.2 -sSfL https://raw.githubusercontent.com/containerscrew/gitrack/main/install.sh | sh -s -- -v "v0.8.0"
sudo rm /usr/local/bin/gitrack
If you installed the cli using cargo:
cargo uninstall gitrack
gitrack --help
Scan git repositories in your file system
Usage: gitrack [OPTIONS]
Options:
-p, --path <PATH> Folder path you want to scan for git untracked files [default: /home/dcr]
-w, --workers <WORKERS> Number of threads to use for scanning repositories [default: 5]
-d, --diff Show differences between changed files
-e, --exclude-dir <EXCLUDE>... Exclude directories to scan
-u, --check-untracked Only show repositories with untracked files
-v, --verbose Print verbose output
-h, --help Print help
-V, --version Print version
gitrack -p /home/elliot # home will be always the default values if -p is not provided
gitrack -p /home/elliot -u
gitrack -p /home/elliot -u -v
gitrack -p /home/elliot -u -d # without -u, -d will not work
gitrack -p /home/elliot -u -w 6
gitrack -p /home/elliot -e "/home/elliot/.cache" -e "/home/elliot/.local" -u -w 6
The use of threads is not really necessary in this type of tools, unless you have a very large file/folder system. Adding threads does not mean always better performance. I have included them in order to practice their use.
cd gitrack/
pre-commit install
cd gitrack/
docker run -it --rm -w /app -h gitrack --name gitrack -v $PWD:/app docker.io/rust:1.80.1-slim-bullseye
- Implement git commit scan for sensitive data using regex. Just for fun. Like gitleaks does.