7

私は実際に自分の git リポジトリを git-lfs に変換しようとしています。bitbucket テスト サーバーをダウンロードし、リポジトリを作成して、リポジトリとサーバーのオプションで lfs を有効にしました。「*.psd」ファイルを追跡するために git-lfs を呼び出すと、正常に動作します。.psd ファイルをプッシュすると、それらは git lfs の場所に保存されます。問題は、既存のリポジトリ (クライアント側) を空の git-lfs リポジトリにプッシュすると、ファイルが git-lfs ストレージ内に保存されないことです。ただし、その後別の .psd ファイルをプッシュすると、正常に動作します。

私のリポジトリを git-lfs に変換する方法を知っていますか? 履歴などはそのままにしておかなければなりません。それに関するガイドもいくつか見ましたが、何もうまくいきませんでした。私は git-lfs-migrate別のスクリプトなどを見ていました。これは、追跡されたファイルを lfs ディレクトリにプッシュするものではありませんでした。ディレクトリ

助けてくれてありがとう!

フロッシー

4

1 に答える 1

7

あなたが抱えている問題は、 を実行すると、後で使用git lfs track *.psdする Photoshop ファイルに何が起こるか (既存のファイルまたは新しいファイルの変更) にのみ影響することです。既にコミットされているものはそのまま残り、Git リポジトリ自体に埋め込まれます。git add

リポジトリの履歴を変換し、大きなファイル コンテンツを Git から LFS に抽出することは可能ですが、これには本質的に Git の履歴を変更する必要があります。実際には、これは、変換を実行した後、このレポを使用するすべての人が新しいコピーを複製するのが最善であることを意味します。明らかに、バックアップを作成し、チームメンバーと調整してください:)

私自身は小さなテストしか行っていませんが、BFG Repo Cleaner は多くの人にとって成功しているようです。他にもたくさんのノイズがありましたが、おそらくあなたが読んだスレッドでこれを見たことがあるでしょう。ここに LFS への変換に関する具体的な手順があります: https://github.com/rtyley/bfg-repo-cleaner/releases/tag/v1.12.5

HTH

于 2016-02-03T10:40:16.983 に答える