【发布时间】:2015-05-12 09:22:21
【问题描述】:
我正在尝试使用 git 挂钩从提交中自动生成变更日志。我在commit-msg 钩子里有这个
#!/bin/sh
git log --oneline > ./CHANGELOG.txt
cat ./CHANGELOG.txt | while read line; do echo "* $line"; done > ./CHANGELOG.md
MSG=$(cat $1)
sed -i "1i* [CURRENT] $MSG" ./CHANGELOG.md
sed -i '1i# CHANGELOG\n' ./CHANGELOG.md
git add ./CHANGELOG.md
rm -rf ./CHANGELOG.txt
问题是更改没有包含在当前提交中。提交后,我的工作树立即变脏,因为 CHANGELOG.md 文件更改未包含在最后一次提交中。
我最初在 pre-commit 钩子中拥有这个,但无法访问当前的提交消息。这甚至可能吗?
【问题讨论】:
标签: git