├── README.md
└── doc
├── Imagens
├── 3_next.png
├── 4_next.png
├── 5_next.png
├── Commit.png
├── Criadores do GitHub.webp
├── DEV + RELEASE + MASTER (1).png
├── Feat + DEvelop (1).png
├── Fork.png
├── Git-e-GitHub.png
├── GuidoVanRossum.jpg
├── Linus-Torvalds.webp
├── Master + Hotfix + Develop (1).png
├── Pull Request.png
├── Pull.png
├── Push.png
├── arvore git flow (1).png
├── basico_git.png
├── como_documentar_1.png
├── criando_repo_1.png
├── criando_repo_10.png
├── criando_repo_11.png
├── criando_repo_12.png
├── criando_repo_13.png
├── criando_repo_14.png
├── criando_repo_15.png
├── criando_repo_16.png
├── criando_repo_2.png
├── criando_repo_3.png
├── criando_repo_4.png
├── criando_repo_5.png
├── criando_repo_6.png
├── criando_repo_7.png
├── criando_repo_8.png
├── criando_repo_9.png
├── develop + master (1).png
├── hotfix gitflow.png
├── install.png
├── next_novamente.png
├── outra_vez_next.png
├── pr_creating_branch.png.png
├── pr_files_changed.png
├── pr_kanban_example.png
├── pr_list.png
├── pr_new.png
├── pr_new2.png
├── pr_new_list.png
├── pr_sample1.png
├── pr_sample2.png
├── pr_sample3.png
├── release gitflow1.png
├── tela_inicial.png
├── trabalhando_com_branchs_1.png
├── trabalhando_com_branchs_2.png
├── trabalhando_com_versionamento_1.png
├── trabalhando_com_versionamento_2.png
├── trabalhando_com_versionamento_3.png
└── trabalhando_com_versionamento_4.png
├── aprendendo_a_documentar_projetos.md
├── aprendendo_comandos_gitflow.md
├── baixando_o_git.md
├── basico_git.md
├── comandos_basicos_linux.md
├── comandos_do_git.md
├── criando_seu_primeiro_repo.md
├── dicionario_git.md
├── o_que_git_e_github.md
├── pull_request.md
├── trabalhando_com_branchs.md
└── trabalhando_com_versionamento.md
/README.md:
--------------------------------------------------------------------------------
1 | # Apostila de Git e GitHub
2 |
3 | ## Súmario
4 |
5 |
6 |
7 | - [O que é Git e GitHub?](./doc/o_que_git_e_github.md)
8 | - [Criando o seu primeiro Repósitorio](./doc/criando_seu_primeiro_repo.md)
9 | - [Dicionario Git](./doc/dicionario_git.md)
10 | - [Resumo sobre PR](./doc/pull_request.md)
11 | - [Comandos básicos do Linux](./doc/comandos_basicos_linux.md)
12 | - [Comandos do Git](./doc/comandos_do_git.md)
13 | - [Aprendendo a documentar projetos](./doc/aprendendo_a_documentar_projetos.md)
14 | - [Issues](./doc/issues.md)
15 | - [Squash](./doc/squash.md)
16 |
17 | > [Slides do curso](https://www.canva.com/design/DAFwaE2itBo/Un1MLNPkGpc_IC-TIySjAw/edit?utm_content=DAFwaE2itBo&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton)
18 |
19 | Feito por Paulo Ricardo Mesquita Rosa Santos
20 |
21 | Colaboração
22 | - Marcos Paulo de Meireles Alves da Silva
23 | - Victor José Glicério
24 | - Paulo Victor
25 |
26 | ---
27 |
28 | ## Referencias
29 |
30 | - [o que é Git](https://www.atlassian.com/br/git/tutorials/what-is-git#:~:text=O%20Git%20%C3%A9%20um%20projeto,kernel%20do%20sistema%20operacional%20Linux.)
31 |
32 | - [Aprenda Git em menos de 10 minutos](https://www.freecodecamp.org/portuguese/news/aprenda-o-basico-de-git-em-menos-de-10-minutos/)
33 |
34 | - [Git e GitGub: Formação Básica](https://www.linkedin.com/feed/update/urn:li:lyndaCourse:3204076/)
35 |
--------------------------------------------------------------------------------
/doc/Imagens/3_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/3_next.png
--------------------------------------------------------------------------------
/doc/Imagens/4_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/4_next.png
--------------------------------------------------------------------------------
/doc/Imagens/5_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/5_next.png
--------------------------------------------------------------------------------
/doc/Imagens/Commit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Commit.png
--------------------------------------------------------------------------------
/doc/Imagens/Criadores do GitHub.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Criadores do GitHub.webp
--------------------------------------------------------------------------------
/doc/Imagens/DEV + RELEASE + MASTER (1).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/DEV + RELEASE + MASTER (1).png
--------------------------------------------------------------------------------
/doc/Imagens/Feat + DEvelop (1).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Feat + DEvelop (1).png
--------------------------------------------------------------------------------
/doc/Imagens/Fork.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Fork.png
--------------------------------------------------------------------------------
/doc/Imagens/Git-e-GitHub.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Git-e-GitHub.png
--------------------------------------------------------------------------------
/doc/Imagens/GuidoVanRossum.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/GuidoVanRossum.jpg
--------------------------------------------------------------------------------
/doc/Imagens/Linus-Torvalds.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Linus-Torvalds.webp
--------------------------------------------------------------------------------
/doc/Imagens/Master + Hotfix + Develop (1).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Master + Hotfix + Develop (1).png
--------------------------------------------------------------------------------
/doc/Imagens/Pull Request.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Pull Request.png
--------------------------------------------------------------------------------
/doc/Imagens/Pull.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Pull.png
--------------------------------------------------------------------------------
/doc/Imagens/Push.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/Push.png
--------------------------------------------------------------------------------
/doc/Imagens/arvore git flow (1).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/arvore git flow (1).png
--------------------------------------------------------------------------------
/doc/Imagens/basico_git.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/basico_git.png
--------------------------------------------------------------------------------
/doc/Imagens/como_documentar_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/como_documentar_1.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_1.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_10.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_11.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_12.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_13.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_14.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_15.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_16.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_2.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_3.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_4.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_5.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_6.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_7.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_8.png
--------------------------------------------------------------------------------
/doc/Imagens/criando_repo_9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/criando_repo_9.png
--------------------------------------------------------------------------------
/doc/Imagens/develop + master (1).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/develop + master (1).png
--------------------------------------------------------------------------------
/doc/Imagens/hotfix gitflow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/hotfix gitflow.png
--------------------------------------------------------------------------------
/doc/Imagens/install.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/install.png
--------------------------------------------------------------------------------
/doc/Imagens/next_novamente.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/next_novamente.png
--------------------------------------------------------------------------------
/doc/Imagens/outra_vez_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/outra_vez_next.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_creating_branch.png.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_creating_branch.png.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_files_changed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_files_changed.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_kanban_example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_kanban_example.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_list.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_new.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_new2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_new2.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_new_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_new_list.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_sample1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_sample1.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_sample2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_sample2.png
--------------------------------------------------------------------------------
/doc/Imagens/pr_sample3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/pr_sample3.png
--------------------------------------------------------------------------------
/doc/Imagens/release gitflow1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/release gitflow1.png
--------------------------------------------------------------------------------
/doc/Imagens/tela_inicial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/tela_inicial.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_branchs_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_branchs_1.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_branchs_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_branchs_2.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_versionamento_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_versionamento_1.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_versionamento_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_versionamento_2.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_versionamento_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_versionamento_3.png
--------------------------------------------------------------------------------
/doc/Imagens/trabalhando_com_versionamento_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaPaPaulitos/lab-git-e-github/adac1d96c144b465e67eb6f1a0015b59ce1c10e2/doc/Imagens/trabalhando_com_versionamento_4.png
--------------------------------------------------------------------------------
/doc/aprendendo_a_documentar_projetos.md:
--------------------------------------------------------------------------------
1 | # Aprendendo a documentar projetos
2 |
3 | ## Para que serve a documentação?
4 |
5 | Proavavelmente você já teve um código que escreveu e não lembra mais como funciona ou a sua estrutura, caso ainda não tenha, saiba que algum dia vai ter.
6 | A documentação serve justamente para resolver esse problema, você conseguir lembrar de pontos importantes e criticos do seu projeto, sem ter que recorrer a comentários no código, a final documentar é para a documentação.
7 |
8 | > [Aprenda conceitos básicos de *Clean Code*](https://www.youtube.com/watch?v=9w3o9NHXqu0)
9 |
10 | ## Até onde vale a pena documentar?
11 |
12 | Então antes da documentação tinhamos o que chamavam de *arte de codar*, onde os desenvolvedores faziam códigos do seu jeito, sendo cada código a sua arte, mas esse processo era inviavel para manutenção de códigos, então logo foi adquirido o [**RUP -** ***Ration Unified Process***](https://www.treinaweb.com.br/blog/o-que-e-rup-rational-unified-process#:~:text=A%20metodologia%20RUP%20utiliza%20uma,caracter%C3%ADsticas%20ser%20incremental%20e%20iterativo.), que era um processo muito burocrático de documentação.
13 |
14 | Então no começo dos anos 2000 os desenvolvedores irritados com o tempo que era perdido documentando os seus projetos, criaram o [*Manifesto Ágil*](https://agilemanifesto.org/iso/ptbr/manifesto.html), onde foi decido que só seria documentado o que desenvolvedor considerasse importante, perdendo assim mesmo tempo com documentação e mais com código.
15 |
16 | ## Aonde documentar?
17 |
18 | Existem diversas ferramentas para documentar e a documentação deve ser feita a partir da escolha da equipe, segue algumas ferramentas de documentação.
19 |
20 | - [Notion](https://www.notion.so/pt-br/product?fredir=1)
21 | - [Obsidian](https://obsidian.md)
22 | - [Confluence](https://www.atlassian.com/software/confluence)
23 | - [BookStack](https://www.bookstackapp.com)
24 | - [GitBook](https://www.gitbook.com/?utm_source=content&utm_medium=trademark&utm_campaign=tLcRoAdw9BYwwpba4ZAD)
25 |
26 | ## Como documentar
27 |
28 | A padronização da documentação é escrita em [**MarkDown**](https://www.markdownguide.org/) que converte o seu texto para *HTML* válido de maneira simples.
29 |
30 | > Podemos escrever em HTML direto no MarkDown caso queiramos
31 |
32 |
33 | ### Titúlos
34 |
35 | Assim como no HTML nós temos hierarquias de Titulos em páginas usando o **MarkDown**, mas aqui só podemos usar do H1 até o H3.
36 |
37 | > Para isso usamos `#`, sendo uma `#` o H1, `##` e `###` o H3.
38 |
39 | 
40 |
41 | ### Listando elementos em MarkDown
42 |
43 | Para listar elementos como abaixo:
44 |
45 | - Um elemento
46 | - Dois elementos
47 | - Três elementos
48 |
49 | Nós usamos `-` para antes de ligar cada elemento como `- Um elemento`.
50 |
51 | ### *Itálico* ou **Negrito**
52 |
53 | Para deixar elementos em *Itálico* ou **Negrito** nós colocamos as palavras entre `*`, sendo `*palavra*` o *Itálico* e `**palavra**` o **Negrito**.
54 |
55 | ### Observação
56 |
57 | Para a gente escrever observações como essa:
58 |
59 | > Isso é uma observação!!!
60 |
61 | Nós usamos `>` antes de uma frase como `> Isso é uma observação!!!` .
62 |
63 | ### Trecho de código
64 |
65 | Para escrever um trecho de código como esse
66 |
67 | ```python
68 | print("Hello Git!")
69 | ```
70 |
71 | Nós precisamos usar código entre ` ``` ` e colocar a linguagem logo após as 3 crases assim como:
72 |
73 | ```python
74 | print("Hello Git!")
75 | ```
76 |
77 | ### Notação simples
78 |
79 | Para escrever uma notação simples assim como:
80 |
81 | `Isso daqui oh!`
82 |
83 | É só colocar seguir esse padrão
84 |
85 | `Isso daqui oh!`
86 |
87 | ### Imagens e links
88 |
89 | Para colocar um link nós usamos:
90 |
91 | [TEXTO](LINK AQUI)
92 |
93 | Para ser dizer que o *Link* é uma imagem é só colocar **!** na frente
94 |
95 | 
96 |
--------------------------------------------------------------------------------
/doc/aprendendo_comandos_gitflow.md:
--------------------------------------------------------------------------------
1 | # Aprendendendo Comandos GitFlow
2 |
3 | ## Para Iniciar o GitFlow no seu Repositório
4 | Para iniciarmos o gitflow em nosso repositório utilizamos o seguinte comando
5 | - git flow init
6 | > Após isso, será iniciado as duas branches padrões do Git Flow
7 |
8 | - master - Ambiente de produção
9 | - develop - Ambiente de Desenvolvimento
10 |
11 |
12 |
13 | `Após isso já estamos prontos para utulizar os comandos git flow em nosso repositório`.
14 |
15 | ## Como Iniciar uma Feature ?
16 |
17 | Para iniciar uma Feature usaremos o seguintes comando
18 |
19 | ### `git flow feature start 'nome da feature'`
20 |
21 | Após executar esse comando, será criando uma branch `LOCAL` baseada na develop para que você realize as alterações necessária, como na imagem Abaixo:
22 |
23 | .png)
24 |
25 | Depois de ralizarmos todas as alterações, devemos finalizar a `feature`, para finaliza-la usaremos os seguintes comandos:
26 |
27 | - `git add .` - como vimos anteriormente nos comandos básicos de git.
28 |
29 | - `git commit -m ""` - que também vimos anteriormente.
30 |
31 | ## Como Finalizar uma Feature ?
32 |
33 | Para finalizarmos, utilizaremos o seguinte comando
34 |
35 | ### `git flow feature finsh 'nome da feature'`
36 |
37 | Após executar este comando, a branch `LOCAL` criada será deletada e será feito o `MERGE` na branch `DEVELOP` e você será redirecionado automáticamente
38 | para a branch `DEVELOP`
39 |
40 | ## E como geramos uma versão do nosso código ?
41 |
42 | Para gerarmos uma versão de produção do nosso código, utilizaremos o seguinto comando
43 |
44 | ### `git flow release start 'nome da release'`
45 |
46 | Ao executar essa esse comando será iniciando uma branch, como demostrado abaixo:
47 |
48 | .png)
49 |
50 | Até aqui tudo certo?!!
51 |
52 | Agora precisamos publicar essa versão, Para isso, utilizamos o seguinte comando:
53 |
54 |
55 | ### `git flow release public 'nome da release'`
56 |
57 | Após executado, ele publica a release no repositório remoto, tornando-a uma candidata e consequentemente realizar `DEPLOY` em `PRÉ-PROD`
58 |
59 | > AGORA PRECISAMOS FINALIZAR UMA VERSÃO
60 |
61 | Para isso utilizamos o seguinte comando
62 |
63 | ### `git flow releaser finish 'versao'`
64 |
65 |
66 | No momento que finalizar, o git abre em sequência três editores de texto:
67 |
68 | - O primeiro é relacionado ao merge da branch release v1.0.0 com a Master, que você pode detalhar o que contempla esta release.
69 | - O segundo é relacionado tag, para facilitar a mudança e identificação, incluir a tag da versão que estão indo para produção v1.0.0
70 | - Por ultimo o merge da release com com a Develop.
71 |
72 | 
73 |
74 | ## Subimos código com erro em produção E AGORA COMO CORRIGIR ?
75 |
76 | Sabemos que é muito normal subirmos códigos com erro em produção, pensando nisso foi desenvolvido uma ferramente própria pra isso.
77 |
78 | > E para isso, usamos o seguinte comando.
79 |
80 | ### `git flow hotfix start 'nome do hotfix'`
81 |
82 | Após o comando ser executado, é aberto uma branch `HOTFIX`, como vemos na imagem abaixo:
83 |
84 | .png)
85 |
86 | Nessa branch você corrigirá todos os erros encontrados em produção e após isso você irá fecha-lá, mas ates exxecutará os seguintes comandos:
87 |
88 | - `git add .` - como vimos anteriormente nos comandos básicos de git.
89 |
90 | - `git commit -m ""` - que também vimos anteriormente.
91 |
92 | > AGORA SIM PODEMOS FINALIZAR NOSSO `HOTFIX`
93 |
94 | E para finaliza-lô, executaremos o seguinte comando:
95 |
96 | ### `git flow hotfix finish -n 'nome do hotfix'`
97 |
98 | Após executar o comando, automáticamente a branch será fechada e `MERGEADA` nas suas branches em uso `MASTER` e `DEVELOP`.
99 |
100 | # ARVORE DO GIT FLOW
101 |
102 | .png)
103 |
--------------------------------------------------------------------------------
/doc/baixando_o_git.md:
--------------------------------------------------------------------------------
1 | # Baixando o Git
2 |
3 | - Baixe o [Git](https://git-scm.com/downloads) de acordo com o seu sitema operacional(Essa apostila vai mostrar a instalação no Windows).
4 |
5 | - Ao Executar o *Instalador do Git* clique em **Next** quando aparecer essa tela.
6 |
7 | 
8 |
9 | - **Next** novamente
10 |
11 | 
12 |
13 | - **Next** novamente
14 |
15 | 
16 |
17 | - **Next** novamente
18 |
19 | 
20 |
21 | - **Next** novamente
22 |
23 | 
24 |
25 | - **Next** novamente
26 |
27 | 
28 |
29 | - **Install**
30 |
31 | 
--------------------------------------------------------------------------------
/doc/basico_git.md:
--------------------------------------------------------------------------------
1 | # Comandos básicos
2 |
3 | Já vimos esses comandos em [Criando seu primeiro repositório](./criando_seu_primeiro_repo.md), mas eles também vão estar aqui.
4 |
5 | 
6 |
7 | ---
8 |
9 | ## Para iniciar o *Repositório local* digite o seguinte comando:
10 |
11 | ```bash
12 | git init
13 | ```
14 |
15 | ---
16 |
17 | ## Ligando um *Repositório local* a um remoto
18 |
19 | > Faça o login do GitHub caso necessário
20 |
21 | ```bash
22 | git remote add origin [LINK DO SEU REPOSITORIO]
23 | ```
24 |
25 | ---
26 |
27 | ## Verificando o status do *Repositório Remoto*
28 |
29 | ```bash
30 | git remote -v
31 | ```
32 |
33 | ---
34 |
35 | ## Atualizando um *Repositório local*
36 |
37 | ```bash
38 | git add [CAMINHO DO QUE QUER JOGAR NO REPOSITÓRIO LOCAL OU . PARA ADICIONAR TODOS ARQUIVOS QUE FORAM ALTERADOS ]
39 | ```
40 |
41 | ---
42 |
43 | ## Realizando um *commit* local.
44 |
45 | > Um commit é a realização permanente de um conjunto de tentativas de alteração, marcando o fim de uma transação e fornecendo durabilidade às transações ACID.
46 |
47 | ```bash
48 | git commit -m "DIGITE AQUI A SUA MENSAGEM"
49 | ```
50 |
51 | ---
52 |
53 | ## Enviando o *commit* também para o GitHub pela primeira vez
54 |
55 | Vamos criar uma Branch chamadada master no GitHub
56 |
57 | ```bash
58 | git push --set-upstream origin master
59 | ```
60 |
61 | ### Observação apartir do momento que você da o comando acima você só precisa digitar
62 |
63 | ```bash
64 | git push
65 | ```
66 |
67 | ### Enviando a atualização para uma Branch específica
68 |
69 | ```bash
70 | git push [NOME DA BRANCH]
71 | ```
72 |
73 | ---
74 |
75 | ## Atualizando o seu *Repositório Local* e *Diretório de arquivos* trazendo as modificações do *Repositório Remoto*
76 |
77 | ```bash
78 | git pull
79 | ```
80 |
81 | ### Atualizando o seu *Repositório Local* trazendo as modificações do *Repositório Remoto*
82 |
83 | ```bash
84 | git fetch
85 | ```
86 |
87 | > Para fazer o restante da atualização é só dar um `git merge` para jogar do *Repositório Local* para o *Diretório de arquivos*
88 |
89 |
90 | ### Atualizando o seu *Repositório Local* trazendo as modificações do *Repositório Remoto* com base em uma Branch
91 |
92 | ```bash
93 | git pull [NOME DA BRANCH]
94 | ```
95 |
96 | ---
97 |
98 | ## Baixando um *Repositório Remoto* da internet
99 |
100 | ```bash
101 | git clone [LINK DO REPOSITORIO]
102 | ```
103 |
104 |
105 | ---
--------------------------------------------------------------------------------
/doc/comandos_basicos_linux.md:
--------------------------------------------------------------------------------
1 | # Comandos básicos do Linux
2 |
3 | ## Entendendo diferença entre terminais.
4 |
5 | - **CMD**: É o terminal padrão do Windows, mais conhecido como prompt de comando, os seus comandos vem diretamente das variáveis de ambiente do seu sistema.
6 |
7 | - **PowerShell**: É um terminal unificado entre todos os sistemas operacionais e tem comandos de navegabilidade básicos como `ls`.
8 |
9 | - **Bash**: É um tipo de terminal usado no Linux (Já foi um padrão, mas hoje em dia existem distros que não utilizam) e do MacOS, esse terminal além de comandos básicos de navegabilidade e de gerenciamento de arquivos como `cat` e `touch`.
10 |
11 | ## Terminal do Git
12 |
13 | No caso o terminal do Git mesmo no Windows ele é o Bash, então podemos fazer uso de comandos de gerenciamento, como aqui o foco não são comandos do Linux aqui será abordado os mais básicos possiveis.
14 |
15 | > Aqui vamos chamar as pastas de **diretórios**
16 |
17 | ## Comandos
18 |
19 | ### Comandos de navegabilidade
20 |
21 | - `cd [Caminho da pasta]`: *Change Directory* é um comando utilizado para trocar de pastas no terminal.
22 |
23 | > Notação importante:
24 | > `.` é para referenciar o diretório atual
25 | > `..` é para referenciar o diretório anterior
26 | > `/` é para separar os caminhos entre os diretórios
27 | > Exemplo:
28 | > `./doc/Imagens` eu estaria acessando apartir do diretório atual o diretório *doc* e depois *Imagens*.
29 |
30 | - `ls`: *List directory contents* é um comando para mostrar todos diretórios de uma pasta.
31 |
32 | - `mkdir`: *Make Directory* é um comando para fazer um novo diretório.
33 |
34 | - `touch [Arquivo que quer criar]`: É um comando para criar um arquivo de uma extensão ou sem.
35 |
36 | - `cat`: É um dos comandos mais poderosos do Linux, [Clique aqui para ver todas possibilidades](https://www.hostgator.com.br/blog/cat-linux-aplicacoes-e-utilizacao/)
37 |
--------------------------------------------------------------------------------
/doc/comandos_do_git.md:
--------------------------------------------------------------------------------
1 | # Comandos do Git
2 |
3 | ## Sumário
4 |
5 | - [Comandos básicos](./basico_git.md)
6 | - [Trabalhando com Branchs](./trabalhando_com_branchs.md)
7 | - [Trabalhando com Versionamento](./trabalhando_com_versionamento.md)
8 |
9 | ---
10 |
11 |
12 |
--------------------------------------------------------------------------------
/doc/criando_seu_primeiro_repo.md:
--------------------------------------------------------------------------------
1 | # Criando o seu primeiro repositório
2 |
3 | ## Pré-requisitos
4 |
5 | - Baixar o [Git](./baixando_o_git.md)
6 |
7 | - Ter uma conta no [GitHub](https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F&source=header-home)
8 |
9 | ## Criando o Repositório no GitHub
10 |
11 | - Clique no botão de **+** no canto superior direto no GitHub.
12 |
13 | 
14 |
15 | - Clique em **New repository**
16 |
17 | 
18 |
19 | ## Explicando os campos
20 |
21 | ### *Repository template*
22 |
23 | Serve caso você queira reutilizar o template de outro repósitorio, como exemplo um repósitorio configurado com o Google Colab para ciência de dados, normalmente não utilizar esse campo, então deixamos o **Default** que é **No template**.
24 |
25 | 
26 |
27 | Mostrando as opções desse campo
28 |
29 | 
30 |
31 | ### *Owner*
32 |
33 | Esse campo é para decidir se o Repositório vai ser seu ou de alguma organização que você faz parte.
34 |
35 | 
36 |
37 | Mostrando as opções desse campo
38 |
39 | 
40 |
41 | ### *Repository name e Description*
42 |
43 | São os campos que vão dar o nome e a descrição do repositório no seu GitHub ou da organização, sendo descrição *opcional*, pois nossa documentação vai ser feita usando *MarkDown*
44 |
45 | 
46 |
47 | Mostrando aonde aparece esses campos em um Repósitorio.
48 |
49 | 
50 |
51 | ### *Visibilidade*
52 |
53 | Sendo os campos mais importantes eles funcionam da seguinte forma:
54 |
55 | - *Public*: Ao marcar esse campo o seu repositório vai estar visivel para todos usuários do GitHub.
56 |
57 | - *Private*: Ao marcar esse campo o seu repositório vai estar visivel para você e todos a quem você conceder acesso.
58 |
59 | > É interessante começar todos repositórios como privado e depois mudar a sua visibilidade para público.
60 |
61 | 
62 |
63 | ### *add a README file*
64 |
65 | É interessante deixar essa opção marcada, pois é mais fácil de documentar escrevendo um **MarkDown**, temos uma sessão só sobre esse assunto nessa apostila.
66 |
67 | > Inclusive essa apostila que você está lendo foi escrita em **MarkDown**
68 |
69 | 
70 |
71 | ### *Add .gitignore*
72 |
73 | O arquito *.gitignore* faz com que a nós possamos reduzir o tempo e espaço na hora de subir um repositório, só deixando arquivos essenciais para executar um código, ignorando arquivos binários como *.exe*, *node_modules* em JavaScript, *venv* e *pycache* em Python e assim por diante.
74 |
75 | > É interessante você já escolher um template de .gitignore se souber a linguagem que vai trabalhar
76 |
77 | 
78 |
79 | ### *Choose a license*
80 |
81 | Essa opção é mais caso você queira dar uma licença já existente pro seu software, a mais utilizada é a do [*MIT* para programas *Open Source*](https://www.diegobrocanelli.com.br/open-source/a-licenca-mit/).
82 |
83 | ### Iniciando o Repositório
84 |
85 | Agora com os dados cadastrados conforme a necessidade podemos clicar no botão **Create repository**
86 |
87 | 
88 |
89 | ---
90 |
91 | ## Criando Repositório local e conectando ele ao GitHub
92 |
93 | - Crie uma pasta no seu computador com o nome do projeto
94 |
95 | - Entre na pasta, clique com o botão direito e clique em *Git Bash Here*.
96 |
97 | 
98 |
99 | - Ela vai abrir essa tela.
100 |
101 | 
102 |
103 | - Para iniciar o *Repositório local* digite o seguinte comando:
104 |
105 | ```bash
106 | git init
107 | ```
108 |
109 | - Agora para conectar ele ao GitHub use o seguinte comando:
110 |
111 | > Faça o login do GitHub caso necessário
112 |
113 | ```bash
114 | git remote add origin [LINK DO SEU REPOSITORIO]
115 | ```
116 |
117 | - Adicione ao Repositorio para testa-lo
118 |
119 | 
120 |
121 | - Digite o seguinte comando para jogar as mudanças no *Repositório local*
122 |
123 | ```bash
124 | git add .
125 | ```
126 |
127 | - Digite uma mensagem para o *commit*
128 |
129 | > Um commit é a realização permanente de um conjunto de tentativas de alteração, marcando o fim de uma transação e fornecendo durabilidade às transações ACID.
130 |
131 | ```bash
132 | git commit -m "DIGITE AQUI A SUA MENSAGEM"
133 | ```
134 |
135 | - Envie o *commit* também para o GitHub
136 |
137 | ```bash
138 | git push --set-upstream origin master
139 | ```
140 |
141 | > Observação apartir do momento que você da o comando acima você só precisa digitar
142 |
143 | ```bash
144 | git push
145 | ```
146 |
147 | - Verifique o GitHub
148 |
149 | 
150 |
--------------------------------------------------------------------------------
/doc/dicionario_git.md:
--------------------------------------------------------------------------------
1 | # Dicionário Git
2 |
3 | ### Commit
4 |
5 | O "commit" no Git é um comando usado para salvar as mudanças feitas em um repositório. Cada commit representa um ponto na linha do tempo do projeto e inclui um conjunto de alterações que podem ser acompanhadas e referenciadas posteriormente.
6 |
7 | 
8 |
9 | ### Fork
10 |
11 | Um "fork" no Git é a ação de criar uma cópia independente de um repositório Git existente. Essa cópia, chamada de "fork", é geralmente feita por um colaborador externo que deseja contribuir para o projeto original, mas não tem permissões diretas para modificar o repositório principal. Portanto, o fork permite que essa pessoa crie sua própria cópia do repositório, na qual ela tem controle total, e pode fazer alterações sem afetar diretamente o projeto original.
12 |
13 | 
14 |
15 | ### Branch
16 |
17 | Um "branch" em Git é uma ramificação independente da linha principal do desenvolvimento. Ele permite que você trabalhe em novas funcionalidades ou correções de bugs sem afetar o código principal. Os ramos podem ser criados, mesclados e excluídos para gerenciar o fluxo de desenvolvimento.
18 |
19 | 
20 |
21 | ### Merge
22 |
23 | "Merge" é o processo de combinar as alterações de um branch em outro. Isso é comumente usado para incorporar o trabalho feito em um branch de desenvolvimento de volta ao branch principal. O Git tenta automaticamente fundir as alterações, mas conflitos podem ocorrer, exigindo intervenção manual.
24 |
25 | 
26 |
27 | ### Push
28 |
29 | "Push" é um comando usado para enviar as alterações locais de um repositório Git para um repositório remoto. Isso sincroniza o repositório remoto com as alterações locais, tornando-as acessíveis a outros colaboradores do projeto.
30 |
31 | 
32 |
33 | ### Pull
34 |
35 | "Pull" é um comando que combina dois passos: "fetch" e "merge". Ele é usado para atualizar seu repositório local com as alterações do repositório remoto. Primeiro, ele busca as alterações do repositório remoto (fetch), e em seguida, combina essas alterações com seu branch local (merge), mantendo seu código atualizado com o trabalho de outros colaboradores.
36 |
37 | Esses são termos essenciais para entender o funcionamento básico do Git, uma poderosa ferramenta de controle de versão amplamente utilizada no desenvolvimento de software.
38 |
39 | 
40 |
41 | ## Pull Request
42 |
43 | Um "Pull Request" (ou PR) é uma solicitação feita por um colaborador para que suas alterações em um branch sejam incorporadas ao branch principal do repositório. É uma ferramenta essencial para o trabalho colaborativo no Git, pois permite que os colaboradores revisem, discutam e, eventualmente, aceitem ou rejeitem as alterações propostas antes de serem mescladas no branch principal. O Pull Request ajuda a manter um controle rigoroso sobre as contribuições e a qualidade do código.
44 |
45 | Este termo é crucial para entender como as contribuições são gerenciadas em projetos Git de código aberto e privados.
46 |
47 | > - [Clique aqui para ver mais detalhamente tudo sobre o funcionamento do Pull Request e suas regras](./pull_request.md)
48 | > - **Créditos ao Paulo Victor**
49 |
50 | 
51 |
52 | 
53 |
54 | > Criador da linguagem de programação *Python*, considerado um ditador benevolente da linguagem, toma as decisões que decidem o rumo da sua criação, uma das ferramentas para isso é o *Pull Request*.
55 | > Guido deixou o seu cargo em Julho de 2018
--------------------------------------------------------------------------------
/doc/o_que_git_e_github.md:
--------------------------------------------------------------------------------
1 | # O que é Git e GitHub
2 |
3 | ## O que é uma ferramenta de versionamento?
4 |
5 | Ferramentas de versionamento são ferramentas utilizadas pelo desenvolvedor para guardar versões do seu código caso algo dê errado, por exemplo quem nunca fez uma *Lista Encadeada* em **C** e no meio do código mudou algo que fez a lista para de funcionar?
6 | A melhor maneira de resolver esse problema é com uma ferramenta de versionamento que permite você restaurar um *commit* algo parecido com um check-point de um jogo.
7 |
8 |
9 | ## O que é Git?
10 |
11 | Git é um controlador de versão de código mais utilizado no mundo atual, o que Git é responsável por fazer versionamento de código local, criado em 2005 pelo **Linus Torvalds**,criador do Kernel do Linux, caso você não conheça ele e sua história assista o [documentário Revolution OS](https://www.youtube.com/watch?v=Z3f-M43DiD4).
12 |
13 |
14 |
15 |
16 | > Linus Torvalds criador do *Kernel do Linux* e do *Git*.
17 |
18 |
19 | ## Qual é a diferença do Git?
20 |
21 | Durante muito tempo o versionamento de código era feito usando uma ferramenta chamada [Bitkeeper](https://www.bitkeeper.org/), mas a empresa que mantém o Bitkeeper decidiu fechar o seu sistema.
22 |
23 | Então **Linus Torvalds** decidiu recriar a ferramenta aplicando os seguintes conceitos.
24 |
25 | - Open Source
26 | - Desempenho
27 | - Segurança
28 | - Flexibilidade
29 |
30 | Graças a implementação desses conceitos o *Git* se tornou um padrão de mercado no versionamento de códigos
31 |
32 | ---
33 |
34 | # O que é GitHub?
35 |
36 | GitHub é um controlador de versão de código remoto *Open Source*, desenvolvido por Chris Wanstrath, J. Hyett, Tom Preston-Werner e Scott Chacon usando o Ruby on Rails, [caso queira conhecer mais sobre Ruby on Rails e sua importância para o mundo de desenvolvimento de software atual clique aqui](https://www.youtube.com/watch?v=oEorhw5r2Do), atualmente o GitHub ele não serve apenas para versionamento e compartilhamento de código, mas sendo uma rede social, hospedagem de sites, CI/CD e entre outras possibilidades.
37 |
38 | > Algo muito importante para os estudantes universitários é se cadastrar no [GitHub Student](https://education.github.com/pack)
39 |
40 |
41 |
42 |
43 | > Chris Wanstrath, J. Hyett, Tom Preston-Werner e Scott Chacon os criadores do GitHub.
--------------------------------------------------------------------------------
/doc/pull_request.md:
--------------------------------------------------------------------------------
1 | # Introdução
2 |
3 | Por questões de boas práticas no uso do versionamento de código, sempre que precisamos
4 | alterar o código vigente, devemos criar uma **branch** a partir deste
5 | código vigente, geralmente com algo que identifique o tipo de tarefa que faremos, um
6 | código único, geralmente de um processo Ágil como o Kanban e um resumo.
7 |
8 | Segundo o site [www.conventionalcommits.org](http://www.conventionalcommits.org), usando
9 | a padronização do commit para criação de **branches**, devemos usar
10 | a palavra **feature** para a criação de um novo recurso ao nosso código.
11 |
12 | Resumidamente podemos usar:
13 |
14 | - **feat**: (new feature for the user, not a new feature for build
15 | script)
16 |
17 | - **fix** (bug fix for the user, not a fix to a build script)
18 |
19 | - **docs**: (changes to the documentation)
20 |
21 | - **styles**: (formatting, missing semi colons, etc; no production code
22 | change)
23 |
24 | - **refactor**: (refactoring production code, eg. renaming a variable)
25 |
26 | - **test**: (adding missing tests, refactoring tests; no production code
27 | change)
28 |
29 | - **chore**: (updating grunt tasks etc; no production code change)
30 |
31 | Sendo assim, com uma tarefa no Kanban Force conforme foto abaixo, um bom
32 | nome para uma nova **branch** seria: **feat/imp2078/integration_test**
33 |
34 | Feat: É a criação, ou seja, o projeto não tinha este recurso.
35 |
36 | Imp2078: Identificação única dessa tarefa dentro do Kanban Force da
37 | empresa.
38 |
39 | Integration_test: Resumo da tarefa.
40 |
41 | 
42 |
43 | Criando uma nova branch.
44 | 
45 |
46 | Uma vez que a branch foi criada, podemos iniciar o desenvolvimento
47 | normalmente, como se estivéssemos na branch original, neste caso a main.
48 | Nada diferente do uso normal, porém, quando chegar a hora de enviar as
49 | alterações, ou seja, o desenvolvimento feito, será necessário criar um
50 | PR (*PULL REQUEST*).
51 |
52 |
53 | # Pull Request
54 |
55 | O pull request, ou PR, é uma solicitação para enviar o que você
56 | desenvolveu para o código original. A princípio parece que apenas
57 | burocratizamos o processo de enviar o que desenvolvemos, o que poderia
58 | ter sido feito através de commits direto na branch main, mas nem de
59 | longe é realmente isso que acontece.
60 | Um PR traz algumas vantagens de enorme valor, como:
61 |
62 | - **Identificação do Criador:** Exibe o autor do Pull Request (PR), oferecendo transparência sobre sua origem.
63 |
64 | - **Branch de Destino:** Indica a branch na qual o PR será mesclado, mostrando claramente para qual ramificação as alterações estão direcionadas.
65 |
66 | - **Branch de Desenvolvimento:** Revela o nome da branch onde o novo código foi desenvolvido. Isso permite que outros programadores baixem e testem o código em suas próprias máquinas, sem comprometer a estabilidade do código original.
67 |
68 | - **Descrição Detalhada:** Inclui um campo para a descrição da tarefa realizada, permitindo recursos avançados como links, fotos e vídeos para demonstrar seu funcionamento ou qualquer outro aspecto relevante para a tarefa em questão.
69 |
70 | - **Registro Cronológico de Alterações:** Apresenta, de forma cronológica, os commits e modificações no PR, incluindo alterações na descrição, conteúdo e outros elementos. Isso evita a possibilidade de ações maliciosas, como a troca do responsável pelo PR ou manipulação indevida de trechos de código.
71 |
72 | - **Visão Clara das Alterações:** Detalha as modificações propostas pelo PR no código original, facilitando a compreensão para todos os programadores envolvidos. Isso proporciona uma compreensão fácil e rápida do que será alterado.
73 |
74 | - **Participações e Melhorias Colaborativas:** Permite que outros programadores façam questionamentos e sugiram melhorias. O responsável pelo PR pode implementar essas melhorias, e os demais programadores podem revisar novamente, gerando novos comentários. Esse processo iterativo continua até que o PR seja aprovado por todos os envolvidos e esteja pronto para ser mesclado no código principal.
75 |
76 | E muitas outras vantagens. Muitas mesmo!
77 |
78 | Abaixo temos a foto de PR:
79 | 
80 |
81 | Podemos ver que ele esta apontado para a branch main e foi criado com a
82 | **branch pv-baseURL**.
83 | Abaixo destas informações temos um campo para descrição com algumas informações sobre o PR,
84 | seu funcionamento e etc.
85 | A direita, em verde e vermelho podemos ver que este PR está apagando 3
86 | linhas de código e adicionando 2.
87 |
88 | Abaixo temos a continuação do PR:
89 | 
90 |
91 | Descendo um pouco mais, temos uma foto na descrição, provando que o PR
92 | está funcionando e 2 informações em ordem cronológica.
93 |
94 | Abaixo temos a parte final deste PR:
95 | 
96 |
97 | No final do PR, temos um campo para que outros programadores para
98 | comentar algo sobre o PR.
99 |
100 | A foto abaixo mostra o que será alterado no código vigente caso este PR seja aprovado:
101 | 
102 |
103 | O que esta em verde é a parte de código que será adicionada e o que está em vermelho, o que será removido do código vigente.
104 |
105 | Agora, como um projeto mostra a lista de PR:
106 | 
107 |
108 |
109 | # Criando um Pull Request
110 | Criar um PR é muito simples, bastando criar uma branch nova antes do início do desenvolvimento, conforme dito no início deste documento, enviar para o GitHub normalmente (Git push) e depois acessar o GitHub do projeto com seu navegador de internet. Veja as fotos abaixo:
111 |
112 | Clique em "Compare e pull request"
113 | 
114 |
115 | Agora basta selecionar a branch de destino, neste caso a 'main' e a branch onde está o código deste PR, neste caso `pv-pull-request`.
116 | obs.: Por se tratar de um projeto simples, não foi utilizado nenhum tipo de convenção no nome desta branch.
117 | E no final, clicar em `create pull request`.
118 | 
119 |
120 | Pronto! Agora o PR foi criado e já esta na lista, aguardando revisão dos outros programadores.
121 | 
122 |
--------------------------------------------------------------------------------
/doc/trabalhando_com_branchs.md:
--------------------------------------------------------------------------------
1 | # Trabalhando com Branchs
2 |
3 |
4 | Criar uma *Branch* é criar uma ramificação de um código, ou seja a partir de um commit, você cria uma versão *paralela* desse código.
5 |
6 | 
7 |
8 | Isso serve justamente para que os programadores possam produzir em paralelo e depois juntar esses códigos fazendo o que chamamos de *merge*.
9 |
10 | 
11 |
12 | ## Criando uma nova Branch
13 |
14 | ```bash
15 | git branch [NOME DA BRANCH]
16 | ```
17 |
18 | ---
19 |
20 | ## Mudar nome da Branch atual
21 |
22 | ```bash
23 | git branch -m [NOME DA BRANCH]
24 | ```
25 |
26 | ---
27 |
28 | ## Listar todas as Branchs
29 |
30 | ```bash
31 | git branch
32 | ```
33 |
34 | ---
35 |
36 | ## Alterando o nome branch atual
37 |
38 | ```bash
39 | git branch -M [NOME QUE QUER DAR PARA A BRANCH]
40 | ```
41 |
42 | ---
43 |
44 | ## Jogando o conteúdo da sua Branch atual para outra
45 |
46 | ```bash
47 | git merge [NOME DA BRANCH]
48 | ```
49 |
50 | ---
51 |
52 | ## Cria uma branch e já te manda para ela
53 |
54 | ```bash
55 | git checkout -b [NOME DA BRANCH]
56 | ```
57 |
58 | ---
59 |
60 | ## Te redireciona para uma Branch
61 |
62 | ```bash
63 | git checkout [NOME DA BRANCH]
64 | ```
65 |
66 | ---
67 |
68 | ## Realiza um merge de um arquivo especifico na branch atual
69 |
70 | ```bash
71 | git checkout [NOME DA BRANCH QUE VOCÊ QUER O ARQUIVO] [CAMINHO DO ARQUIVO]
72 | ```
73 |
74 | ---
--------------------------------------------------------------------------------
/doc/trabalhando_com_versionamento.md:
--------------------------------------------------------------------------------
1 | # Trabalhando com versionamento
2 |
3 |
4 | ## Vendo a lista de modificações em um *Repositório Local*
5 |
6 | ```bash
7 | git status
8 | ```
9 |
10 | 
11 |
12 | ---
13 |
14 | ## Removendo todas alterações de um *Repositório Local*
15 |
16 | ```bash
17 | git reset
18 | ```
19 |
20 | ## Verificando o ID dos *commits*
21 |
22 | ```bash
23 | git log
24 | ```
25 |
26 | 
27 |
28 | > O que está sublinhado em vermelho são os *ids* dos commits
29 |
30 | ## Voltando um commit temporariamente
31 |
32 | ```bash
33 | git checkout [id]
34 | ```
35 |
36 | 
37 |
38 | > Como podemos ver na imagem quando usamos esse comando, nós voltamos um commit, mas não removemos os commits depois dele.
39 |
40 |
41 | ## Deletando todos commits a partir de uma data
42 |
43 | ```bash
44 | git reset --hard [id]
45 | ```
46 | ```bash
47 | git add .
48 | ```
49 | ```bash
50 | git commit -m "MENSAGEM DIZENDO QUE VOLTOU O COMMIT"
51 | ```
52 |
53 | Agora vamos forçar o repositório remoto voltar também.
54 |
55 | ```bash
56 | git push --force origin main
57 | ```
58 |
59 | 
60 |
61 | > Nesse caso vamos voltar o repositório para o commit que selecionamos, assim deletando os commits que foram feitos posteriormente a esse.
62 |
--------------------------------------------------------------------------------