Git mass push. Как заслать во все “ремоуты”.

Думаю, все, кто работал с git-ом, сталкивались с ситуацией, когда удаленных репозиториев несколько и хотелось бы сделать “git push” во все. Например, у меня проекты лежат одновременно на sf.net, github.com и в собственном приватном хранилище.

Я для себя написал маленький скриптик на bash:

#~/bin/bash
git remote show | while read repo_name
do
git push $repo_name $*
done
Постоянная ссылка на этот кусок кода: http://paste.nophp.ru/1Nu. Код раскрашен с помощью Paste.NoPHP.ru.

Если положить скрипт в файл “~/bin/git-mass-push”, то его можно будет запускать командой “git mass-push”, для которой будет работать стандартное автодополнение git-а. При этом, этой команде можно передать любые параметры, которые принимает “git push” после имени репозитория, что видно из кода.

Пользуемся, радуемся;)