gitログのテキストファイルを作業ディレクトリに保持しており、コミット後に更新するスクリプトがあります。これは問題ありませんが、これの効果は、リポジトリ内にあるバージョンが常に1コミット遅れることです。
スクリプトを呼び出してリポジトリにファイルを追加するpre-commitフックを作成して、現在のコミット情報を含むログのテキストバージョンを保存することは可能ですか?
私はgitフックを初めて使用しますが、可能であれば、これがどのように機能するかはまったくわかりません。私は助けに感謝します!
gitログのテキストファイルを作業ディレクトリに保持しており、コミット後に更新するスクリプトがあります。これは問題ありませんが、これの効果は、リポジトリ内にあるバージョンが常に1コミット遅れることです。
スクリプトを呼び出してリポジトリにファイルを追加するpre-commitフックを作成して、現在のコミット情報を含むログのテキストバージョンを保存することは可能ですか?
私はgitフックを初めて使用しますが、可能であれば、これがどのように機能するかはまったくわかりません。私は助けに感謝します!
簡単な答え:いいえ。ログには、コミットの内容に応じて、コミットのSHA1が含まれます。ログを変更すると、コミットも変更されますが、それでも無効になります。
なぜあなたは本当にこれをやろうとしているのだろうか。リポジトリ内では、git logと同じくらい良いcat saved-git-logです。これを変更ログとして使用する場合は、リリースされたバージョンの場合、ビルド/デプロイプロセスの一部として作成します(例:次のようになります)。
tarname=my-project-$(git describe HEAD).tar
git log > changelog.txt
git archive --format=tar HEAD > $tarname
tar -Af $tarname changelot.txt
gzip $tarname
Bitbucket/GithubのRSSフィードから完全なログを取得するだけです。これは、特にHerokuを使用するときに、求めていることを実現するための最も簡単な方法のようです。