domingo, 5 de fevereiro de 2017

Criando e aplicando patches com GIT

Você fez um branch de um projeto com GIT e quer submeter um patch.

Veja bem, você não vai empurrar as suas alterações diretamente para o repositório remoto, você irá enviar um arquivo contendo as alterações para alguém aplicá-las, possivelmente, um revisor de código ou o git master.

Após fazer as alterações e executar o git commit, você utiliza o seguinte comando:

git format-patch master --stdout > [nome do arquivo].patch

O argumento master indica que as alterações serão aplicadas no branch master.

Vamos agora pensar do ponto de vista de quem recebe o patch. A pessoa que enviou deve ter explicado em um fórum, lista de discussão e/ou por um relato em um sistema de solicitações de mudança, o que ela fez. Mas você quer saber realmente o que será alterado, antes de aplicar o patch. Você pode ver as alterações antes de aplicá-las com o seguinte comando:

git apply --stat [nome do arquivo].patch

A próxima questão é saber se não haverá problemas em aplicar o patch. Você fazer um teste com o seguinte comando:

git apply --check fix_empty_poster.patch

Tendo certeza de que não haverá problemas, você pode aplicar o patch usando o seguinte comando:

git am --signoff < [nome do arquivo].patch

O argumento --signoff identificará que o commit resultante foi originário de um patch, incluindo o nome de usuário e e-mail que você configurou com git config.

Nenhum comentário:

Postar um comentário