gitでコミットまたは一連のコミットから変更されたファイルのみをエクスポート/アーカイブする簡単な方法はありますか?私はこれを行うための明確な指示を見つけることができないようだ(そして私はLinux/Gitを初めて使う)。Gitでのみ変更されたファイルをエクスポート/アーカイブする
私はmsysgitを使用しています。ほとんどの場合、リポジトリ全体を配備するのは問題ありませんが、多くの場合、小さなフィックスを一度にいくつかのファイルに展開する方がはるかに効率的です。
リモートサーバーにgitをプッシュ/プル/インストールすることは、私のアクセスレベルがプロジェクトとクライアントによって異なるため、実際にはオプションではありません。
(ラフな推測)にストレートな方法はあります:
pipe 'diff --names-only' to 'git-archive'?
ちょうどposteritiesのために、その別のテクニックは、次のようなものになります: 'git diff --name-only [diff options] | xargs tar -czf files.tar.gz' – jason
'xargs'を使うと、' xargs'は1つのコマンドラインにすべてのファイルを置くにはファイルが多すぎると 'tar'を2回以上実行するため、別の問題があります。これにより、 'tar'は新しい.tarファイルを上書きして、最後のバッチのファイルのみを含むようになります。 –
構文を説明してくれてありがとう! backticksは私が必要なものです:)これは、ファイル名(ウィンドウ...)にスペースがある場合を除いて、msysgitに付属のbashコマンドラインで完全に動作します。それらを自動的にエスケープする方法はありますか? – AKS