quarta-feira, 16 de abril de 2014

Automatizando um novo branch git

...Como prometido estou voltando a postar dicas e começarei com automatização do git.

Hoje existem varias ferramentas que fazem ou prometem fazer esta tarefa de automatizar o git, o próprio git fornece uma interface visual que pode ser acessada utilizando o comando "gitk", porem se você é como eu e gosta de suas próprias soluções então poderás automatizar os teus processos utilizando o Shell Script.

A extensão para esses arquivos ao contrario do que muitos pensam quando estão trabalhando no windows não é (*.bat) e sim (*.sh) ou seja "viva o linux", então comecemos;

Um novo branch;

 - Na criação de um novo branch, teoricamente você faria os seguintes passos;

  1. Atualizaria o seu branch local develop
  2. Apartir do seu branch local develop atualizado você criaria o seu novo branch

- Repassando esse processo para o arquivo de automatização teríamos;


- Crie um arquivo e salve o mesmo com a extensão .sh;
- Abra esse aquivo para edição;- Sete o path dos seus fontes, ex;
  • cd C:
  • cd Sistemas
  • cd MeuSistema
  • cd src
- Atualize o seu branch develop 
  • git pull (branch remoto)
- Lance uma pergunta ao usuário
  • Informe o nome do branch a ser criado
- Crie o novo branch
  • git checkout -b (novo branch)
- Segue um modelo;

# Novo branch
# Jucelio Moura

function EnquantoEnter {
echo ""
read -p "Click enter para continuar..." nothing
}
function mensagem(){
    msg=$@
    echo -e " ############# "$msg" ############# "
}

mensagem INICIANDO O PROCESSO...

# Localiza pasta dos fontes

echo
echo QUAL A DIRETORIO DE TRABALHO?
read part

mensagem SETANDO DIRETORIO $part...

cd $part:
log=$?
logMsgErro="DIRETORIO $part NAO ENCONTRADO"
if [ $log -eq 0 ];
then
mensagem SETANDO PASTA SISTEMAS...
cd Sistemas
log=$?
logMsgErro="PASTA SISTEMA NAO ENCONTRADA"
fi

if [ $log -eq 0 ];
then
mensagem SETANDO PASTA MEUSISTEMA...
cd MEUSISTEMA
log=$?
logMsgErro="PASTA MEUSISTEMA NAO ENCONTRADA"
fi

if [ $log -eq 0 ];
then
mensagem SETANDO PASTA SRC...
cd src
log=$?
logMsgErro="PASTA SRC NAO ENCONTRADA"
fi

#Seta no branch develop
if [ $log -eq 0 ];
then
mensagem SETANDO BRANCH DEVELOP...
git checkout develop
log=$?
logMsgErro="ERRO AO SETAR O BRANCH DEVELOP"
fi

#Atualiza branch develop
if [ $log -eq 0 ];
then
mensagem ATUALIZANDO BRANCH DEVELOP...
git pull (origin ou ipservidor) develop
log=$?
logMsgErro="ERRO AO ATUALIZAR O BRANCH DEVELOP"
fi

if [ $log -eq 0 ];
then
echo
echo Digite o nome do novo branch
read nome_branch
fi

#Seta o novo branch
if [ $log -eq 0 ];
then
mensagem SETANDO BRANCH $nome_branch...
git checkout -b $nome_branch
log=$?
logMsgErro="ERRO AO SETAR O NOVO BRANCH"
fi
if [ $log -eq 1 ];
then
   echo -e "\n"
echo $logMsgErro
fi

EnquantoEnter

Nenhum comentário:

Postar um comentário