4

Git LFS が大きなファイルを適切に追跡するのに問題があります (同様の問題がここで報告されています: Git LFS は、次のことを行うまで、大きなファイルを適切に追跡することを拒否しました)。

私の特定のケースでは、複数のサブディレクトリで構成されるディレクトリをプッシュしようとしています。各サブディレクトリには、追跡したい特定の種類のファイルがあります。これらのファイル タイプの拡張子は.bed、、、.Bedおよび.sorted. これが私が従ったレシピです:

を実行しgit add .、次にgit commit -m "initial commit"、それぞれの追跡コマンド (例: git lfs track ".bed")を発行し、次に を実行しましたgit push origin master

しかし、「this exceeds GitHub's file size limit of 100.00 MB」で終わる複数のエラー コマンドを受け取りました。このトピックに関するスタック オーバーフローの投稿はほぼすべて確認済みです (たとえば、git lfs が 100MB を超えるファイルに対して適切に機能しないなど)。アドバイスをいただければ幸いです。

4

3 に答える 3

0

これらの指示に基づいて、最初に追跡する必要があり、次に追加してコミットできます。bitbucket についても同様の指示に従いましたが、うまくいきました。

trackの前に追加コミットすると、おそらく lfs リポジトリではなく、自分のリポジトリでコミットしています。

于 2016-10-21T05:46:25.510 に答える
0

かなりの数の大きなファイルがあるためにキャッシュされたファイルをすべて削除する必要がある場合は、次を使用できます。

git rm -r --cached .

すべてのファイルをキャッシュしないことを示すために、そのピリオドを必ず含めてください。

于 2022-03-04T05:26:53.117 に答える
0

私はまったく同じ問題を抱えていました。後で、「....skiped...」と同じように、大きなファイルが実際にlfs経由でアップロードされていることに気付きました。しかし、大きなファイルはまだ git コミット履歴に存在します。私がそれをどのように解決したかは、使用することでしたgit filter-branch --index-filter 'git rm -r --cached --ignore-unmatch <file/dir>' HEAD(大きなファイルのファイル名に置き換える必要があることに注意してください)。これにより、履歴内の大きなファイルのレコードがフィルタリングされます。この後、git push origin masterエラーはなくなりました。

于 2020-04-20T02:37:11.070 に答える