diff --git a/.shell_functions b/.shell_functions index 8013c8a..bccf89c 100644 --- a/.shell_functions +++ b/.shell_functions @@ -97,3 +97,18 @@ testmerge() { git diff --cached echo "'git merge --abort' when done" } + +git_changelog() { + echo "# Last 25 Commits" > CHANGELOG.md # Add the header + git log --pretty=format:"%h|%ad|%an|%s" --date=short -n 25 | \ + awk -F'|' '{ + printf "## %s (%s, %s) - %s\n\n", $1, $3, $2, $4; + commit_hash = $1; + cmd = "git show -s --format='%x09%b' " commit_hash; + while ((cmd | getline line) > 0) { + printf "%s\n", line; + } + close(cmd); + printf "\n"; + }' >> CHANGELOG.md +}