在 iOS 开发中,如果pod 仓库很多时候, 每次更新需要手动创建很多个分支,浪费时间, 我们可以使用脚本批量创建不同仓库的git分支
- 提高效率
如果你有大量的仓库需要创建同样的分支,使用脚本可以大大提高效率。你只需要运行一次脚本,就可以在所有的仓库中创建分支,而不是在每个仓库中手动创建分支。
- 减少错误
人工操作容易出错,而脚本则可以保证在每个仓库中创建的分支名称、初始提交等信息完全一致。
- 便于管理
当你需要在多个仓库中创建、切换或删除相同的分支时,使用脚本可以使你更方便地管理这些分支。
- 自动化
通过脚本,可以实现一系列的自动化操作,如拉取最新代码、切换到特定分支、合并代码、推送代码等,进一步提高开发效率。
- 可定制和可扩展
你可以根据需要定制脚本,添加更多的功能,如在创建分支后自动创建 pull request、在所有仓库中执行相同的 git 命令等。
- 方便集成其他工具
你可以将这个脚本集成到其他工具中,如 CI/CD 工具,实现自动化的代码发布和部署。
总结来说,使用脚本批量创建分支可以提高开发效率,减少错误,便于管理,具有很高的灵活性和扩展性,是一种很实用的开发技巧。
#!/bin/bash
# 1. 创建一个包含所有 Git 仓库路径的数组
git_repos=(
"/path/to/repo1"
"/path/to/repo2"
"/path/to/repo3"
# ...
)
# 2. 遍历数组中的每个 Git 仓库路径
for repo in "${git_repos[@]}"; do
echo "处理 Git 仓库: $repo"
cd "$repo"
# 3. 检查 Git 状态并丢弃所有修改
git reset --hard
git clean -fd
# 4. 检查是否有 "release/2023_New_2302" 分支
git fetch
if git rev-parse --verify release/2023_New_2302 >/dev/null 2>&1; then
# 5.2. 切换到 "release/2023_New_2302" 分支并更新
git checkout release/2023_New_2302
git pull
else
# 5.1. 从远端拉下 "release/2023_New_2302" 分支
git checkout -b release/2023_New_2302 origin/release/2023_New_2302
fi
# 6. 检查是否有 "release/2023_New_Release_MR2302" 分支
git fetch
if git rev-parse --verify release/2023_New_Release_MR2302 >/dev/null 2>&1; then
echo "分支 release/2023_New_Release_MR2302 已经存在"
else
# 7. 创建 "release/2023_New_Release_MR2302" 分支并推送到远程仓库
git checkout -b release/2023_New_Release_MR2302
if git push --set-upstream origin release/2023_New_Release_MR2302; then
echo "分支 release/2023_New_Release_MR2302 创建成功"
else
echo "分支 release/2023_New_Release_MR2302 创建失败,可能已经存在"
fi
fi
done