1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHubにAPIキーなどの機密データを上げてしまった場合の対処方法

Posted at

APIキーなどの機密情報をGitHubに上げてしまった場合の対処方法を検索すると、リポジトリの履歴書き換えツールとして、以下のコマンドを用いた解決方法が見つかりました。

  • git-filter-branch (git標準ツール)
  • git-filter-repo (別途インストール)
  • BFG Repo-Cleaner (別途インストール)

結論

先に結論を書かせていただきますと、git-filter-repoを使うべきです。
理由は、git公式で推奨しているツールであり、他のツールと比較して処理が高速で柔軟性のある操作が可能なためです。
使用方法は、下記サイトを参照してください。それ以降に結論に至った理由を記載しています。
git-filter-repo 使用方法(公式GitHubリポジトリ)
git-filter-repo 使用方法(GitHub Docs)

git-filter-branch(非推奨)

個人的には別途インストールする必要のない、git標準ツールであるgit-filter-branchを使用するのが、ベストだと思いましたが、下記git公式サイトの通り現在は非推奨のツールとなっており、代替ツールとしてgit-filter-repo の利用が推奨されていました。
補足:非推奨の理由や、それでも使いたい場合の説明、コマンド実行時のオプションなどが書かれているので、気になる方は参考にしてみてください。
git-filter-branch ドキュメント

git-filter-repo(git公式が推奨)

git公式でも推奨していると記載しましたが、下記GitHubのサイトでも、リポジトリからの機密データの削除についてというドキュメントで、git-filter-repoを使用した方法が紹介されています。
リポジトリからの機微なデータの削除

BFG Repo-Cleaner

git-filter-branchと比較すると、処理速度が速く簡単に使用することができるが、git-filter-repoと比較すると機能が限定的で柔軟性に欠けるとのことです。候補に挙げましたが、詳しく調査していません。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?