我在一个文件夹中有多个项目,我想获得最新信息。
例如:
C:\Projects\Project 1
C:\Projects\Project 2
C:\Projects\Project 3
通常我会打开Git Bash,直接指向一个项目(例如“cd C:\Projects\Project 1
”),然后输入“git pull
”。
在此之后,重复所有其他项目。
是否有更快/更短/更省时的方式来获取我的所有项目的最新信息?
答案 0 :(得分:1)
另一种方法是在父项目仓库中声明每个回购,如 submodules 。
你可以configure those submodules to follow their respective master branch
cd c:\Projects\Parent
git submodule add -b master Project1 /url/Project1
这样,从父repo c:\ Projects \ Parent,一个简单的cmmand将立即更新每个子模块:
git submodule update --remote
答案 1 :(得分:1)
如果子模块方法不适合你,你可以使用一个用Bash编写的简单脚本:
#!/bin/bash
for dir in */
do
echo "Updating $dir"
cd "$dir"
git pull
cd ..
done
如果将其定义为函数,您甚至可以将其重用于其他命令:
function for_all_dirs ()
{
for dir in */
do
echo "Updating $dir"
cd "$dir"
$*
cd ..
done
}
用for_all_dirs git pull
调用它,它将拉入所有目录。