git diff コマンドと git archive コマンドを利用した差分抽出については知ってはいたんですが、しばらくFTPでのアップロードが必要なプロジェクトから逃れていたこともあり、あまり追求していませんでした。 今回再びそのような環境に携わることになりましたので、Windowsで実現する方法を調べて試してみたところ、以下のようなバッチファイルでうまくいきました。 git-archive-diff.bat @echo off setlocal ENABLEDELAYEDEXPANSION set DIFF_LIST= set NEW_SHA=%1 set OLD_SHA=%2 if "%OLD_SHA%" == "" ( set OLD_SHA=%NEW_SHA% set ARCHIVE="%NEW_SHA:~0,7%.zip" ) else ( set ARCHIVE="%OLD_