「Git/大きなファイル履歴削除」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==bfgとは== git履歴の大きめファイルを削除してくれるツール ==準備== javaが必要なのでインストール mac/インストール/java [...」) |
(→push前にgitリポジトリのクリーンアップ) |
||
(同じ利用者による、間の11版が非表示) | |||
行9: | 行9: | ||
==bfgインストール== | ==bfgインストール== | ||
<pre> | <pre> | ||
− | cd / | + | cd /d/src |
curl -o bfg.jar https://repo1.maven.org/maven2/com/madgag/bfg/1.14.0/bfg-1.14.0.jar | curl -o bfg.jar https://repo1.maven.org/maven2/com/madgag/bfg/1.14.0/bfg-1.14.0.jar | ||
</pre> | </pre> | ||
+ | |||
+ | ==100MB以上のgit履歴削除== | ||
+ | 履歴削除前に、そのファイルがgitに含まれてれば、削除commitしておく。 | ||
+ | |||
+ | <pre> | ||
+ | cd repo1 | ||
+ | java -jar /d/src/bfg.jar --strip-blobs-bigger-than 100M .git | ||
+ | </pre> | ||
+ | 出力 | ||
+ | <pre> | ||
+ | Deleted files | ||
+ | ------------- | ||
+ | Filename Git id | ||
+ | ---------------------------------------------------------------------------- | ||
+ | FirebaseCppApp-10_0_0.bundle | 2aa412eb (136.0 MB) | ||
+ | FirebaseCppApp-11_4_0.bundle | a4f977b7 (154.1 MB) | ||
+ | FirebaseCppApp-11_5_0.bundle | d49e044e (154.4 MB) | ||
+ | FirebaseCppApp-6_10_0.so | 12be4e70 (104.6 MB) | ||
+ | FirebaseCppApp-7_1_0.so | 8bcae0eb (105.0 MB) | ||
+ | FirebaseCppApp-8_1_0.so | 9c855169 (120.4 MB) | ||
+ | FirebaseCppApp-9_1_0.bundle | f2986ef8 (131.7 MB) | ||
+ | NotoSansJP-Regular SDF.asset | 9c726834 (131.2 MB), fe2ee0e8 (131.2 MB) | ||
+ | thumbnail.key | bf3026f8 (205.6 MB), 5e8540cf (262.5 MB), ... | ||
+ | </pre> | ||
+ | 色々削除してくれた様子。 | ||
+ | |||
+ | 今も、使ってるファイルのgit履歴は、消えてない模様。 | ||
+ | |||
+ | ==指定ファイルの削除== | ||
+ | 履歴削除前に、そのファイルがgitに含まれてれば、削除commitしておく。 | ||
+ | |||
+ | パスは含めるとエラーになるので、ファイル名のみで、パスは、含めないないこと | ||
+ | java -jar /d/src/bfg.jar --delete-files large_file.zip .git |
2025年8月8日 (金) 18:40時点における最新版
bfgとは
git履歴の大きめファイルを削除してくれるツール
準備
javaが必要なのでインストール
mac/インストール/java [ショートカット]
bfgインストール
cd /d/src curl -o bfg.jar https://repo1.maven.org/maven2/com/madgag/bfg/1.14.0/bfg-1.14.0.jar
100MB以上のgit履歴削除
履歴削除前に、そのファイルがgitに含まれてれば、削除commitしておく。
cd repo1 java -jar /d/src/bfg.jar --strip-blobs-bigger-than 100M .git
出力
Deleted files ------------- Filename Git id ---------------------------------------------------------------------------- FirebaseCppApp-10_0_0.bundle | 2aa412eb (136.0 MB) FirebaseCppApp-11_4_0.bundle | a4f977b7 (154.1 MB) FirebaseCppApp-11_5_0.bundle | d49e044e (154.4 MB) FirebaseCppApp-6_10_0.so | 12be4e70 (104.6 MB) FirebaseCppApp-7_1_0.so | 8bcae0eb (105.0 MB) FirebaseCppApp-8_1_0.so | 9c855169 (120.4 MB) FirebaseCppApp-9_1_0.bundle | f2986ef8 (131.7 MB) NotoSansJP-Regular SDF.asset | 9c726834 (131.2 MB), fe2ee0e8 (131.2 MB) thumbnail.key | bf3026f8 (205.6 MB), 5e8540cf (262.5 MB), ...
色々削除してくれた様子。
今も、使ってるファイルのgit履歴は、消えてない模様。
指定ファイルの削除
履歴削除前に、そのファイルがgitに含まれてれば、削除commitしておく。
パスは含めるとエラーになるので、ファイル名のみで、パスは、含めないないこと
java -jar /d/src/bfg.jar --delete-files large_file.zip .git