拉取几个 git 存储库的更改

Pull changes for several git-repositories

在我的文件夹 ~/git 中,我有 20 多个包含 git-repositories 的文件夹。 我可以通过运行

来提取每个存储库的更改
cd folder1
git pull
cd ..
cd folder2
git pull
cd ..
# etc

在bash中我也可以用循环解决它:

for f in $(find . -mindepth 1 -maxdepth 1 -type d);
do
  cd ${f};
  git pull;
  cd..;
done

我想知道是否有更优雅的方式,例如使用 xargsfind-exec

如果没有以点开头的目录。

for f in */; do (cd "$f"; git pull); done

或者在你的 ~/.bashrc 中放置一个函数并使用一个简单的 git_pull:

git_pull()
{
  oldwd="$PWD"
  cd ~/git
  for f in */; do (cd "$f"; git pull); done
  cd "$oldwd"
}