タグ

pushとfilter-branchに関するishideoのブックマーク (3)

  • Git ファイルの履歴を完全に削除する

    Git_ファイルの履歴を完全に削除する.md Git ファイルの履歴を完全に削除する 秘密鍵など誤ってコミットしてしまった場合に履歴を完全に削除する手順 参考:6.4 Git のさまざまなツール - 歴史の書き換え 動作確認用にブランチを作成して試す $ git checkout -b clean-key-file 動作確認用にブランチでgit filter-branchを実行 $ git filter-branch --tree-filter 'rm -f common/key/id_rsa' HEAD Rewrite 856f0bf61e41a27326cdae8f09fe708d679f596f (12/12) Ref 'refs/heads/clean-key-file' was rewritten clean-key-fileブランチでid_rsaが履歴から完全に削除されているこ

    Git ファイルの履歴を完全に削除する
  • Gitからファイルを完全に削除する方法(BFG Repo-Creaner) - Qiita

    やっべ!間違えたファイルをgit pushしちゃった! この記事では誰もが一度はやらかすであろう(?)、Gitレポジトリから"ヤバい"ファイルを消し去る方法を解説します。筆者は主に趣味でプログラミングをやる際にGitを使用するため、業務等の視点から見ると、不適切な点があるかもしれません。 以下で使用している、git push -fは使い所を間違えると非常に危険なコマンドです。なぜ危険なのかわかるまでは使わないほうが無難だと思います。どうしても使わないとならないときは、仕事ならGitのエキスパートが身近にいると思うので、その人に助言を求めましょう。 対象となる事例 この記事は、以下のような種類の情報を含んだファイルを、コミット&プッシュしてしまった人が、Gitレポジトリから過去にさかのぼって削除する方法についてまとめました。 秘密鍵 パスワード 個人情報 etc... 対象でない事例 以下の

    Gitからファイルを完全に削除する方法(BFG Repo-Creaner) - Qiita
  • Git リポジトリに上がっているファイルを履歴ごと消すには? - Qiita

    仕事で必要になったので、ファイルを履歴ごと消す方法を試してみました。 ファイルを消しても履歴は残っている 例えば、1GB のバイナリファイルを Commit & Push したとします。 そして、それを git rm で削除したとしてもリポジトリの容量は減りません。 なぜか? git rm は「ファイルが削除されたことにするコマンド」であって、「Git リポジトリ内に保存されている履歴を消すコマンド」ではないからです。 このサイトに書かれていますが、Git は「差分」ではなく「スナップショット」を保存して、「どのスナップショットを参照するのか?」をコミット単位ごとに切り替える仕組みです。 git rm は、この「どのスナップショットを参照するのか?」という情報を削除するコマンドです。 もし、データを丸ごと消したいのであれば、保存されている全ての「スナップショット」を消さなければなりません。

    Git リポジトリに上がっているファイルを履歴ごと消すには? - Qiita
  • 1