LoginSignup
0
0

More than 3 years have passed since last update.

git bashで2つのブランチ名を指示するだけで差分をzipしてくれるやつ

Last updated at Posted at 2020-01-24

初投稿です.

n番煎じネタですけど,gitやshellを勉強中なので,個人的なメモとして残しておきます.
環境はWindowsを想定しています.

git bashでは2つのブランチ間の差分ファイルをリストアップするgit diffコマンドと,ファイルリストをzipに固めてくれるgit archiveコマンドがあります.
それらを組み合わせつつ,タイトルが日付のzipになるようにして,ついでにそれを~/.bashrcで関数化して,簡単に呼び出せるようにします.

C:/Users/<ログオンユーザー>/.bashrcファイルを作り,以下を書き込みます.

~/.bashrc
function gitexport() {
  #引数チェック
  if [ -z "$1" -o -z "$2" ]
  then
    return
  fi
  COMMIT1=$1
  COMMIT2=$2
  #日付を取る
  NOWDATE=`date +%Y%m%d`
  #コミット間の差分リスト
  EXPORTFILES=`git diff --name-only --diff-filter=d $COMMIT1 $COMMIT2`
  #zipにする
  git archive $COMMIT1 --format=zip -o $NOWDATE.zip --prefix=$NOWDATE/ $EXPORTFILES
}

実行するにはgit bashで次のように指示します.

$ gitexport V1.0.0 V0.9.0

gitexport <新しいほうのコミット名> <古いほうのコミット名>

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0