Mantendo seus repositórios Git e SVN atualizados
Publicado por Alexandre Mulatinho (última atualização em 13/05/2013)
[ Hits: 4.782 ]
Homepage: http://alex.mulatinho.net
Fala galera, beleza!?
Este script é para pessoal que desenvolve ou para administradores de sistema que gostam de ficar acompanhando repositórios de desenvolvimento a cada commit.
O script abaixo faz a atualização de todo um diretório contendo repositórios, podendo ser instalado na cron, fazendo toda a ação de forma automática!
Mais informações sobre o funcionamento:
http://alex.mulatinho.net/?p=245
#!/bin/bash
#Mulatinho <alex@mulatinho.net>
basedir=${HOME}/repo
subdir="github"
nodir="codigolivre.org.br|update.sh"
function do_update()
{
echo "entrando em '${1}'.."
cd ${1} 2>/dev/null
repositorio=`echo ${1} | awk -F'/' '{print $NF}'`
if git status >/dev/null 2>&1;
then
echo "atualizando git repositorio '${repositorio}'"
git pull
elif svn status | egrep -i 'not a working copy' >/dev/null 2>&1;
then
echo "atualizando svn repositorio '${repositorio}'"
svn update
else
echo "'${repositorio}' nao eh um repositorio git ou svn"
fi
echo
echo
}
#principal
for workdir in ${basedir}/*;
do
if echo ${workdir} | egrep "${subdir}" >/dev/null 2>&1
then
rdir=${workdir}
for workdir in ${rdir}/*;
do
do_update "${workdir}"
done
elif echo ${workdir} | egrep "${nodir}" >/dev/null 2>&1
then
continue
else
do_update "${workdir}"
fi
done
cd ${basedir}
Script simples para verificar usuários logados na maquina e as postas abertas
Instalador do Nagios no Fedora 14 e CentOS 5
Atualizando KDE 3x para KDE4.1 no Slackware 12
Nenhum comentário foi encontrado.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Não consigo instalar distro antiga no virtualbox nem direto no hd (31)
archlinux resolução abaixou após atualização (12)









