git-remotes-add.bash 867 B

1234567891011121314151617181920212223242526
  1. #!/bin/bash
  2. ## Este script serve para adicionar vários remotes em um repositório GIT.
  3. ## Não importa qual é o 'origin' ou 'upstream', este script cria remotes novos.
  4. pushd `pwd`
  5. ORIGIN="`git remote -v | grep -m 1 -e 'origin' | awk '{ print $2 }'`"
  6. REMOTE_NAMES=( 'notabug' 'gitlab' 'github' )
  7. REMOTE_URLS=( 'notabug.org' 'gitlab.com' 'github.com' )
  8. if [ ${#REMOTE_NAMES[*]} -eq ${#REMOTE_URLS[*]} ]
  9. then
  10. for REMOTE_NUM in `seq 0 \`expr ${#REMOTE_NAMES[*]} - 1\``
  11. do
  12. REMOTE_NAME="${REMOTE_NAMES[${REMOTE_NUM}]}"
  13. REMOTE_URL="`echo ${ORIGIN} | sed -s \"s/@[a-z.]*:/@${REMOTE_URLS[${REMOTE_NUM}]}:/g\"`"
  14. ## Attempt to add remote, otherwise, set its url, otherwise does nothing.
  15. git remote add ${REMOTE_NAME} ${REMOTE_URL} || git remote set-url ${REMOTE_NAME} ${REMOTE_URL}
  16. done
  17. else
  18. echo "Número de parâmetros incorretos, corrija o script"
  19. fi
  20. popd