Move `git-commit-last-msg` into an autoloadable function. This way it can also be executed as external script and thus in a git alias. This makes it additionally possible to call it in vim over fugitive's `:Git`.
13 lines
506 B
Bash
Executable File
13 lines
506 B
Bash
Executable File
#!/usr/bin/env zsh
|
|
|
|
# Commit, but put the last written commit message into the editor buffer.
|
|
# For this it uses .git/COMMIT_EDITMSG but deletes all lines after and including
|
|
# the first comment of the file.
|
|
# Useful for example when the commit-msg hook fails but only slight
|
|
# modifications are needed.
|
|
# Additional arguments (for example `-n` to bypass the hooks) can be passed.
|
|
|
|
local gitdir
|
|
gitdir="$(git rev-parse --git-dir)" || return
|
|
git commit -eF <(sed -n '/^#/q;p' "$gitdir/COMMIT_EDITMSG") "$@"
|