Created
January 12, 2016 06:20
-
-
Save ameyamashiro/2e6cdf82ed0c70a26f46 to your computer and use it in GitHub Desktop.
Git リポジトリから指定の Commit までの差分ファイルをまとめて zip ファイルを作成
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
source "$(git --exec-path)/git-sh-setup" | |
# echo $GIT_DIR | |
# echo $GIT_OBJECT_DIRECTORY | |
EXPORT_FILENAME="diff-"`git rev-parse $1 | cut -b1-7`"-to-"`git rev-parse HEAD | cut -b1-7` | |
if [[ $# == 1 ]]; then | |
if [[ -n $(git rev-parse --verify --quiet $1) ]]; then | |
# git archive -v --format=zip HEAD `git diff -C --name-only --diff-filter=ACMRTUXB $1 HEAD ` -o ~/Desktop/${EXPORT_FILENAME}.zip | |
git diff -C --name-only --diff-filter=ACMRTUXB $1 HEAD | sed -e 's/^.*$/"&"/g' | xargs zip ~/Desktop/${EXPORT_FILENAME}.zip | |
else | |
die "$1 does not exist" | |
fi | |
else | |
usage | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
日本語ファイル名の問題を解決した差分抽出スクリプトです。
git-diffzip として、パスの通っている場所へ設置してください。
Mac のみで検証しています。
とすると現在のコミットから hash までの差分を抽出して zip ファイルをデスクトップへ設置します。