Skip to content

Instantly share code, notes, and snippets.

@skolima
Last active February 16, 2021 17:10
Show Gist options
  • Save skolima/3ba15ad438b7562a4513e99a4baf216d to your computer and use it in GitHub Desktop.
Save skolima/3ba15ad438b7562a4513e99a4baf216d to your computer and use it in GitHub Desktop.
#!/bin/bash
# store the current dir
CUR_DIR=$(pwd)
# Let the person running the script know what's going on.
echo -e "\n\033[1mPulling in latest changes for all repositories...\033[0m\n"
# Find all git repositories and update it to the master latest revision
for i in $(find . -name ".git" | cut -c 3-); do
echo "";
echo -e "\033[33m"+$i+"\033[0m";
# We have to go to the .git parent directory to call the pull command
cd "$i";
cd ..;
# finally pull
git checkout main || git checkout master;
git fetch --all --prune;
git merge origin/main --ff-only || git merge origin/master --ff-only
# lets get back to the CUR_DIR
cd $CUR_DIR
done
echo -e "\n\033[32mComplete!\033[0m\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment