前回、日誌を自動生成するシェルスクリプトの作り方を解説しました。今回はその続編として、作成した日誌を自動でGitHubに送信する方法について説明します。
日誌の自動サイクル!!3つのコマンドだけで効率化を図る Part1 日誌自動生成編
前回のコードに続き、以下のように日誌を送信するためのコードを追記します。
# Write the JSON object to the daily report file
report_file="${diary_dir}/reports/${today}.json"
echo "${json}" > "${report_file}"
# Add changes to the diary file
git add "${diary_file}" "${report_file}"
# Commit changes to the diary file
git commit -m "Update diary for ${today}"
# Push changes to remote repository
git push origin main
このコードの各部分を詳しく見ていきましょう。
日誌をJSONファイルに書き込む
まず、生成したJSONオブジェクトを日誌のレポートファイルに書き込みます。
report_file="${diary_dir}/reports/${today}.json"
echo "${json}" > "${report_file}"
ここでは"${diary_dir}/reports/${today}.json"
というパスのファイルを新たに作成(あるいは既存のファイルを上書き)し、その中にJSONオブジェクトを書き込みます。
Gitで変更をステージングする
次に、Gitを使用して日誌とレポートの変更をステージングします。
git add "${diary_file}" "${report_file}"
これにより、日誌ファイルとレポートファイルの変更が次のコミットで追跡されるようになります。
Gitで変更をコミットする
次に、これらの変更をローカルのGitリポジトリにコミットします。
git commit -m "Update diary for ${today}"
このコマンドで、先程ステージングした変更をローカルリポジトリに保存します。-m
オプションはコミットメッセージを指定します。この例では、”Update diary for ${today}”というメッセージを指定しています。
Gitで変更をリモートリポジトリにプッシュする
最後に、コミットした変更をリモートのGitHubリポジトリにプッシュします。
git push origin main
このコマンドで、ローカルリポジトリの変更がGitHub上のリポジトリに反映されます。これにより、自動で生成された日誌がGitHub上に保存され、他のメンバーと共有することができます。
以上が日誌の自動生成とGitHubへの送信の方法です。次回の投稿では、この自動生成された日誌をSlackへ送信する方法について解説しますので、お楽しみに!