-
-
Save julioarguello/6ed9f4fa62006dc2ef4f86764d8f7765 to your computer and use it in GitHub Desktop.
Sync 2 remote repositories script - Just define the 3 variables (use export command for that!)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# REPO_NAME=<repo>.git | |
# ORIGIN_URL=git@<host>:<project>/$REPO_NAME | |
# REPO1_URL=git@<host>:<project>/$REPO_NAME | |
rm -rf $REPO_NAME | |
git clone --bare $ORIGIN_URL | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed clone of $ORIGIN_URL" | |
exit 1 | |
fi | |
cd $REPO_NAME | |
git remote add --mirror=fetch repo1 $REPO1_URL | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed add remote of $REPO1_URL" | |
exit 1 | |
fi | |
git fetch origin --tags | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed fetch from $ORIGIN_URL" | |
exit 1 | |
fi | |
git fetch repo1 --tags | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed fetch from $REPO1_URL" | |
exit 1 | |
fi | |
git push origin --all | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed push to $ORIGIN_URL" | |
exit 1 | |
fi | |
git push origin --tags | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed push tags to $ORIGIN_URL" | |
exit 1 | |
fi | |
git push repo1 --all | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed push to $REPO1_URL" | |
exit 1 | |
fi | |
git push repo1 --tags | |
if [ "$?" != "0" ]; then | |
echo "ERROR: failed push tags to $REPO1_URL" | |
exit 1 | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment