GIT-IME(1) | git-ime User Manual | GIT-IME(1) |
git-ime - An interactive git commit split helper tool
git-ime [-a] [--auto] [-n] [--notag] [-v] [--verbose] [-h] [--help]
This git ime is a simple shell wrapper script on git and imediff to split the latest commit from HEAD^ to HEAD on the current git repository into multiple commits.
If any staged changes or local uncommitted changes are found in the git repository, git ime immediately exits without changes to be on the safe side.
If the latest commit involves multiple files, this big commit is split by the file into multiple smaller commits involving a single file.
If the latest commit involves only a single file, the commit is split into multiple smaller commits involving a set of meaningful partial changes selected by imediff interactively.
This git-ime is not only useful at the checked out branch head but also at "edit" prompt during the interactive execution of git rebase -i treeish. Execute git-ime after committing the pending commit.
To preserve good accessibility to the original state, this git-ime tags the original commit with "git-ime-aYYYYMMDD-HHMMSS" if it hasn't been tagged. Also this git-ime tags its final commit with "git-ime-zYYYYMMDD-HHMMSS" for the convenience of subsequent operations such as git-rebase. This is not applicable during git-rebase .
Please note this git-ime creates or overwrites file.tmp_a and file.tmp_b files. So they should not exist before execution of this command.
-a, --auto
-v, --verbose
-n, --notag
-h, --help
imediff (1), git(1), and git-rebase(1).
This manual page as well as the program itself was written by Osamu Aoki (<osamu@debian.org>). This document has been placed into the Public Domain.
Osamu Aoki
Copyright © 2018-2021 Osamu Aoki <osamu@debian.org>
2021-06-04 | git-ime |