こんにちは。齋藤です。 今日はgolangを使ってgitの操作をやります。 はじめに golangには pure go implementation な git のライブラリがあります。 go-git 今回の記事では、このライブラリを使って git の操作を行います。 今回動かしたいシナリオは以下のようなものです。 あるリポジトリAを リリースする リポジトリAのイベントをhook起点に別のリポジトリBに コミットして PRを送る 今回はリポジトリBに commit して PRを送るに着目して この記事では リポジトリBを clone した後にファイルを変更・commit して push までをやってみます。 なお後々、Webhook などで動かしたいので AWS Lambda の上で動かしてみます。 gitの操作は全てインメモリで行います。 準備 今回はAWS Lambdaで実行すること
![golangのgit ライブラリ「go-git」を使ってインメモリでgit操作をする | DevelopersIO](https://cdn-ak-scissors.b.st-hatena.com/image/square/0d93f7d26add6d22f8b4bc0e0e960ea5721ee876/height=288;version=1;width=512/https%3A%2F%2Fdevio2023-media.developers.io%2Fwp-content%2Fuploads%2F2015%2F02%2Fgolang.png)