Windows 下 powershell 测试通过

  • 打包最后一次提交涉及到的文件:
1
git archive --format=zip --output=files.zip HEAD $(git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT HEAD)
  • 打包指定(ID)提交涉及到的文件:
1
git archive --format=zip --output=files.zip HEAD $(git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT xxxxxx)
  • 打包两个版本之间的差异:
1
git archive --format=zip --output=files.zip HEAD $(git diff-tree -r xxxxxx1 --name-only --diff-filter=ACMRT xxxxxx2)
  • 打包某次提交之后的所有文件(不含当前)
1
git archive --format=zip --output=files.zip HEAD $(git diff-tree -r xxxxxx --name-only --diff-filter=ACMRT HEAD)
  • 打包 master
1
git archive --format=zip --output master.zip master
  • 打包 head
1
git archive --format=zip --output head.zip HEAD
  • 打包 tag
1
git archive --format=zip --output v1.0.0.zip v1.0.0
  • 打包最后修改的文件(不管有没有 add 或 commit ),只要 git diff 有变化就会打包
1
git archive --format=zip -o update.zip HEAD $(git diff --name-only HEAD^)
  • 打包两个分支之间的差异
1
git archive --format=zip -o update.zip HEAD $(git diff --name-only master 1.0.0)
  • 打包两个版本 (commit) 间的差异
1
git archive --format=zip -o update.zip HEAD $(git diff --name-only HEAD~2)

评论