19

短い質問: 通常の git pull が一部のファイルを無視するように git を構成することは可能ですか?

問題の説明: (git lfs を使用して保存された) いくつかの大きなデータ ファイルを含むリポジトリがあります。

データ ファイルを扱う一部の開発者はこれらのファイルの更新されたバージョンを必要としますが、他の開発者はファイルを必要としますが、最新バージョンとは限りません。

更新されたコード バージョンが必要です。また、データ ファイルはコードと同じリポジトリにあります。

通常のプルではデータ ファイルが更新されないように設定したいと考えています。

  • LFS からファイルをダウンロードせずにプルを実行できることはわかっていますが、これによりファイルがポインター ファイルに置き換えられ、以前のバージョンのファイルが必要になります。
4

3 に答える 3

16

このマニュアルページに遭遇しました。テストはしていませんが、役に立てば幸いです。


含めて除外する

Git LFS を構成して、リポジトリの特定のパスの参照を満たすオブジェクトのみをフェッチしたり、リポジトリの特定のパスを除外したりして、使用しないもののダウンロードに費やす時間を削減できます。

gitconfig で、lfs.fetchinclude と lfs.fetchexclude を、フェッチに含める/除外するパスのコンマ区切りのリストに設定します (gitignore によるワイルドカード マッチング)。fetchinclude で一致し、fetchexclude で一致しないパスのみがオブジェクトを取得します。

例:

  • git config lfs.fetchinclude "textures,images/foo*"

    これは、textures フォルダー内のパスで参照されているオブジェクトと、images フォルダー内の foo* というファイルのみをフェッチします。

  • git config lfs.fetchinclude "*.jpg,*.png,*.tga"

    リポジトリ内のどこにいても、JPG/PNG/TGA ファイルのみを取得します

  • git config lfs.fetchexclude "media/reallybigfiles"

    media/reallybigfiles フォルダーで参照されている LFS オブジェクトをフェッチしないで、それ以外はすべてフェッチします。

  • git config lfs.fetchinclude "media"
    git config lfs.fetchexclude "media/excessive"

    「メディア」フォルダー内の LFS オブジェクトのみをフェッチしますが、そのサブフォルダーの 1 つにあるものは除外します。

于 2016-06-29T02:38:29.687 に答える
5

すべてのgit lfs ファイルを無視する場合:

GIT_LFS_SKIP_SMUDGE=1 のエクスポート

クローン/プルする前に

于 2017-04-26T06:51:27.867 に答える