pull_submodules.sh 776 B

123456789101112131415161718192021222324252627282930313233
  1. #!/bin/bash
  2. # 拉取子工程脚本
  3. # 用于初始化并更新 git submodules
  4. set -e
  5. SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
  6. REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
  7. cd "$REPO_ROOT"
  8. echo "=========================================="
  9. echo " 拉取子工程 (Git Submodules)"
  10. echo "=========================================="
  11. # 检查是否存在 .gitmodules
  12. if [ ! -f .gitmodules ]; then
  13. echo "错误: 未找到 .gitmodules 文件"
  14. exit 1
  15. fi
  16. # 初始化子模块(首次克隆时)
  17. echo ">>> 初始化子模块..."
  18. git submodule init
  19. # 拉取并更新子模块
  20. echo ">>> 拉取子模块..."
  21. git submodule update --init --recursive --remote
  22. echo ""
  23. echo "完成: 所有子工程已拉取完成"
  24. echo "子模块列表:"
  25. git submodule status