Crates.io | gitrack |
lib.rs | gitrack |
version | 2.0.0 |
source | src |
created_at | 2024-10-14 13:58:30.435904 |
updated_at | 2024-10-14 13:58:30.435904 |
description | Scan local git repositories |
homepage | |
repository | https://github.com/containerscrew/gitrack |
max_upload_size | |
id | 1408332 |
size | 934,621 |
Table of Contents generated with mtoc
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 | ✅ | ✅ |
curl --proto '=https' --tlsv1.2 -sSfL https://raw.githubusercontent.com/containerscrew/gitrack/main/install.sh | sh
curl --proto '=https' --tlsv1.2 -sSfL https://raw.githubusercontent.com/containerscrew/gitrack/main/install.sh | sh -s -- -v "v0.8.0"
Open a terminal and run:
git clone https://github.com/containerscrew/gitrack
cd gitrack
make install
sudo rm /usr/local/bin/gitrack
With cargo:
make uninstall
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.