1
- # Git Hooks: o que são e por que você provavelmente não usará
1
+ # Git Hooks: o que são e como usá-los
2
2
3
3
Os hooks não são exclusividade do GIT. Em verdade, praticamente todo sistema de
4
4
controle de versões de código moderno tem uma forma de hook. A ideia por trás do
@@ -10,14 +10,11 @@ comentário e verificar se o mesmo segue um determinado formato.
10
10
11
11
Os hooks são usados normalmente em empresas que implementam um ciclo completo de
12
12
desenvolvimento, com rastreamento de requisitos do documento ao código. Este
13
- tipo de rastreamento envolve a integraçào das modificações no código com algum
13
+ tipo de rastreamento envolve a integração das modificações no código com algum
14
14
sistema de controle de requisitos ou problemas (issue tracker).
15
15
16
16
Assim, o hook é usado para lançar no sistema de controle de versões quais as
17
- alteraçòes que foram feitas em qual arquivo para qual issue. O fato é que com as
18
- técnicas modernas de desenvolvimento de software, isso está caindo em desuso
19
- pois eleva o custo do desenvolvimento de sistemas sendo que o benefício é
20
- mínimo.
17
+ alteraçòes que foram feitas em qual arquivo para qual issue.
21
18
22
19
## Onde estão os hooks
23
20
@@ -30,26 +27,29 @@ Uma coisa muito importante para se ter em mente: todos os scripts foram
30
27
projetados para execução em algum shell linux ou unix. Porém você pode escrever
31
28
seus hooks em python ou ruby ou na linguagem de scripting da sua preferência.
32
29
33
- ## Por que você provavelmente não vai usar
30
+ ## Cenários comuns de uso
34
31
35
- A rastreabilidade de _ issues _ em código é uma prática considerada antiquada hoje
36
- em dia, principalmente por que engessa o processo de desenvolvimento de
37
- software, tornando-o mais caro. São poucas as empresas que usam essas práticas
38
- pois exigem a adoção de alguma metodologia que exige alto grau de documentação
39
- de todo o processo, como o CMM .
32
+ Existem alguns cenários interessantes que podem usar o git hook como uma
33
+ ferramenta de integração e, até mesmo, validação. Por exemplo, digamos que o seu
34
+ projeto tem um padrão bem estabelecido de comentários. Um hook de pré-commit
35
+ pode validar o conteúdo dos comentários antes de realizar o commit, impedindo a
36
+ operação se o comentário estiver fora de padrão .
40
37
41
- A grande maioria das software houses e empresas que têm serviços de
42
- desenvolvimento não usam tal grau de rastreabilidade e, portanto, não há
43
- necessidade de algo tão apurado. Mesmo no caso de padronizações de comentários,
44
- é mais fácil e rápido confiar no developer do que ter de escrever shell scripts
45
- complexos para validar os comentários.
38
+ Um outro uso refere-se à rastreabilidade: você pode integrar um commit com uma
39
+ ferramenta de bug tracking, armazenando na ferramenta de bug tracking quais
40
+ arquivos foram alterados para aquele commit.
46
41
47
- Assim, provavelmente você não vai usar os hooks, principalmente por que trazem
48
- pouco benefício ao seu dia-a-dia.
42
+ Há ainda um outro cenário no qual você pode forçar a indentação do código para
43
+ determinado formato, chamando um code styler em um hook de pré-commit para
44
+ garantir que o código sempre será carregado no repositório de acordo com os
45
+ padrões da empresa.
46
+
47
+ Além de validações, é possível usar os hooks para integrações com sistemas de
48
+ compilação e automações dos mais diversos tipos e necessidades.
49
49
50
50
# Mais Informações
51
51
52
- Se você tem realmente necessidade de criar um hook, vale a pena dar uma lida
53
- [ neste artigo] ( http://git-scm.com/book/pt-br/Customizando-o-Git-Hooks-do-Git ) . Os
52
+ Vale a pena dar uma lida [ neste
53
+ artigo] ( http://git-scm.com/book/pt-br/Customizando-o-Git-Hooks-do-Git ) . Os
54
54
principais hooks estão cobertos e há explicação de qual parâmetro cada um deles
55
55
utiliza-se para validar os commits e outras operaçòes do GIT.
0 commit comments