IT评测·应用市场-qidao123.com

标题: git中用于天生commitId与其父commitId间的文件差异文件树 [打印本页]

作者: 傲渊山岳    时间: 前天 15:13
标题: git中用于天生commitId与其父commitId间的文件差异文件树
天生commitId与其父commitId间的文件差异文件树
  1. #!/bin/bash
  2. #
  3. #        用于生成目标commitId与其父commitId间文件差异
  4. #
  5. commit_id=$1  # 输入目标commit的哈希值
  6. old_dir="old_version"
  7. new_dir="new_version"
  8. # 创建目录
  9. mkdir -p "$old_dir" "$new_dir"
  10. # 获取差异文件列表
  11. files=$(git diff --name-only "${commit_id}^" "$commit_id")
  12. # 导出文件
  13. for file in $files; do
  14.     # 父commit版本
  15.     mkdir -p "$old_dir/$(dirname "$file")"
  16.     git show "${commit_id}^:$file" > "$old_dir/$file" 2>/dev/null || echo "[跳过] 父提交中不存在: $file"
  17.     # 当前commit版本
  18.     mkdir -p "$new_dir/$(dirname "$file")"
  19.     git show "${commit_id}:$file" > "$new_dir/$file" 2>/dev/null || echo "[跳过] 当前提交中不存在: $file"
  20. done
  21. mv "$old_dir" "$commit_id"_"$old_dir"
  22. mv "$new_dir" "$commit_id"_"$new_dir"
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4