winget install --id=woaitsAryan.regit -e
regit is a CLI tool written in Golang with several features to manage git repositories and histories.
CLI tool to manage git repositories and histories
<a href="#installation">Installation</a>
·
<a href="#docs">Docs</a>
·
<a href="https://github.com/woaitsAryan/regit/issues/new?labels=enhancement&template=feature-request---.md">Request Features</a>
·
Regit is a CLI tool written in Go that allows you to rewrite git histories. Changing ownership, timestamps, even commit messages to follow conventions, all in a single command
Using regit multiple times might cause object corruption in your git repository. Please use it after backup up your .git folder.
python3 -m pip install --user git-filter-repo winget install regit
git clone https://github.com/woaitsAryan/regit && cd regit make setup
Regit currently supports 5 commands:
regit recommit
: Reads all the commit diffs and writes better commit messages, then commits them again.regit own
: Makes you the author of all the commits.regit blame
: Makes the user specified by and
the author of all the commits.regit nuke /path/to/file
: Removes the file specified from all the commits in the repository.regit retime
: Rewrites the commit times of all the commits in the repository to be of x
hours in the past, evenly spaced. Can be any number of hours.regit rewind
: Rewinds the commit times of all the commits to be pulled x
hours in the past. Can be any number of hours.regit fastforward
: Fast forwards the commit times of all the commits to be pushed x
hours in the future. Can be any number of hours.The following flags can be used with any command:
--source
or -s
: Specify the path to the git repo. If not specified, the current directory is used.--branch
or -b
: Specify a branch.--verbose
or -v
: Enable verbose output. This will print additional details about the operations being performed.--quiet
or -q
: Enable quiet output. This will suppress most output, printing only essential information.Regit uses git-filter-repo under the hood to rewrite git histories. I would like to thank the authors and contributors of git-filter-repo for their work.