最近、git clean/smudge
フィルタについて読むと、自動的に画像を圧縮してプッシュする前に、&が私のレポにコミットする素晴らしい方法だと思った。画像圧縮にgit cleanフィルタを使う
問題は、画像を元の状態に解凍するために、きれいなフィルタと、反転した汚れフィルタがないことです。
でも、可能であれば、これは最初に画像を圧縮するという点を打破することになります。
これは私の.gitconfig
です:
[filter "compress-jpg"]
clean = gm convert -compress JPEG - -
[filter "compress-png"]
clean = gm convert - -
これは私の.gitattributes
です:
*.jpeg filter=compress-jpg
*.jpg filter=compress-jpg
*.png filter=compress-png
驚いたことに、私は後でgitのは、すべてのファイルがチェックアウトした後に変更されていると考えていることを発見しました。
この種の問題の解決方法は何ですか?
gitはきれいで、完全に可逆的なものにしか使用できませんか?
gitを圧縮してインデックスに格納する前に作業ツリーのファイルを置き換える方法はありますか?
こうすれば、gitはチェックアウト後にファイルが変更されることはありません。
私はすでに '.gitattributes'をセットアップしています。しかし、クリーンコマンドを '%file_name'を使って変更するだけでいいのですか?そしてそれはどのように機能するのですか? "それは別のファイルを考えている" gitにどのように対処していますか? – CMCDragonkai
また、私はこれらのコマンドがパイプであることを意図していると思いました。したがって、私のクリーンコマンドで ' - 'を使用します。 'gm'をパイプにする必要があります。 – CMCDragonkai
すべての画像ファイルを処理したい場合は、.gitattributes '* .jpg filter_name'または' * .jpg filter = filter_name'で設定してください。 – CodeWizard