Node環境からGitHub にコミットを行う方法
はじめに
Node 環境から GitHub へのコミットを行ったので、備忘録的にその方法を記事にします
今回の実装を行ったレポジトリはこちらです
https://github.com/kanakanho/esa-frontmatter-rewrite-push-github
環境
コミットする手順
0. 宣言とライブラリの準備
環境変数
octokit と ファイル関係の宣言
1. base ブランチの情報をfetch する
2. コミットを行うブランチの最新のコミットの tree を fetch する
3. fetch した tree を元にファイルを追加する tree を作成する
4. 作成した tree を用いて commit を作成する
5. 作成したコミットをブランチに反映する
これが全てエラーなく実行されたら GitHub にデータコミットされると思います
全体のコード
終わりに
普段 Git の深いところまで触れていないので、コミットって思ったよりも複雑な仕組みでできているんだと感じました。
あんまり情報がまとまっていないように感じたので、誰かの参考になれば幸いです!
参考にしたサイト
https://queq1890.info/blog/octokit