└── README.md
/README.md:
--------------------------------------------------------------------------------
1 | # Como usar o Git e Github na prática
2 |
3 | ## Início do vídeo
4 |
5 | Oie gente sejam bem vindos a mais um vídeo aqui do canal, eu sou a Rafaella Ballerini e hoje eu vou mostrar pra vocês como utilizamos o GIT na prática
6 |
7 | No [vídeo anterior](https://www.youtube.com/watch?v=DqTITcMq68k) eu expliquei os conceitos de alguns termos técnicos que utilizamos quando estamos usando o git, então [nesse vídeo](https://www.youtube.com/watch?v=UBAX-13g8OM) vou mostrar na prática como isso acontece.
8 |
9 | ## Instalando o GIT
10 |
11 | * [Link com os downloads](https://git-scm.com/downloads)
12 |
13 | ## Criar um projeto novo
14 |
15 | * Criar uma nova pasta no PC pra isso chamada `Git Tutorial`
16 |
17 | * Abrir o VSCode nessa pasta
18 |
19 | * Criar um novo arquivo `README.md`
20 |
21 | * Escrever dentro dele `Olá, nesse projeto você aprenderá alguns comandos do Git`
22 |
23 | * Salva o arquivo
24 |
25 | Agora então é hora de usarmos o Git
26 |
27 | * Abre o Git Bash que foi instalado na máquina (pode ser pelo terminal do VSCode mesmo)
28 |
29 | * `git init` para inicializar o repositório
30 |
31 | Foi criada uma pastinha `.git` e é ali que toda a mágica acontece, então não apague
32 |
33 | * `git add README.md` para colocar o arquivo na área de stagging
34 |
35 |
36 |
37 | Esse `add` é necessário antes de darmos o commit de fato, mas por que isso? No final do vídeo explico para vocês
38 |
39 | * `git commit -m "primeiro commit"` para de fato dar o commit no repositório
40 |
41 | * `git branch -M "main"` para alterar o nome da branch principal de `master` para `main` (isso é uma boa prática atualmente recomendada)
42 |
43 | ## Interfaces Git
44 |
45 | Beleza, recebemos a confirmação de que o commit aconteceu, mas isso tá um pouco abstrato ainda né?
46 | Existem algumas [interfaces legais do git](https://git-scm.com/downloads/guis) que você pode fazer o download para poder visualizar de fato como está o projeto, o que foi alterado em cada commit, quando foi alterado etc.
47 | Aqui eu vou mostrar pra vocês a usarem direto no Github.
48 |
49 | ## Repositório no Github
50 |
51 | * Depois de você ter criado a sua conta na plataforma, você irá em `Criar novo repositório`
52 |
53 | Você vai preencher com as informações do projeto, então dar o nome do repositório, colocar uma breve descrição e criar
54 |
55 |
56 |
57 | Logo depois vai aparecer essa página um pouco cinza e confusa e com vários comandos (pode até perceber que alguns deles jpa usamos), mas o que você tem que fazer é bem simples, apenas copie o link que aparecer para você
58 |
59 |
60 |
61 | Lembra do conceito de `remote` que eu expliquei pra vocês no último vídeo? Nós iremos utilizá-lo agora
62 |
63 | * Para passar o commit do meu repositório local (da minha máquina) para um repositório na plataforma do Github, usamos o `git remote add origin `
64 |
65 | * `origin` é o nome utilizado para referenciar o nosso repositório
66 |
67 | Agora já temos o nosso repositório local conectado com o respositório do Github, porém o `commit` que damos na máquina não sobe automaticamente para a plataforma
68 |
69 | * Para isso precisaremos empurrar, enviar para lá com o `git push -u origin main`
70 |
71 | Agora se recarregarmos a página iremos ver o nosso arquivo aqui na plataforma!
72 |
73 | ## Alterando e adicionando arquivo
74 |
75 | Beleza, agora que temos o nosso repositório no Github configurado direitinho, podemos usar e abusar do que o Git oferece, afinal é pra isso que estamos utilizando ele né?
76 | Primeira coisa que faremos então é alterar esse arquivo que já commitamos
77 |
78 | * Adiciona mais uma frase no arquivo `Essa é uma alteração`
79 |
80 | * Além disso iremos criar um novo arquivo `Projeto.md`, onde escreveremos `Esse é o arquivo onde desenvolverei o meu projeto`
81 |
82 | * Agora então precisamos subir essa alteração, pra isso seguiremos os mesmos passos de `git add .` (agora ponto `.` pois adiciona todos os arquivos) e `git commit -m "Primeira alteração"`
83 |
84 | * Lembrando que para alterar algo no nosso respositório do Github precisamos dar o push, então `git push origin main` (sem o -u)
85 |
86 | Se olharmos agora o nosso código no Github, ele terá sido alterado, e não só isso, se clicarmos no nome do `commit`, podemos ver exatamente as alterações que foram feitas nele.
87 | O verde com `+` e o vermelho com `-` mostra, os conteúdos que foram adicionados e editados dentro do código.
88 | Aqui nesse botão poderemos ver todos os commits já feitos anteriormente, então se clicarmos em algum deles, veremos exatamente o que havia sido alterado, além de claro, vermos o código como era. Incrível né?
89 |
90 |
91 |
92 | ## Branch
93 |
94 | Até agora tudo o que fizemos de alterações e mandamos de commit, foi na nossa `main`, que é aquela linha do tempo principal.
95 | Agora vou mostrar pra vocês como criamos uma branch e depois como que juntamos ela com o código que já está na `main` (lembrando que ela é uma linha cronológica adicional/alternativa a principal)
96 | E outra, a branch pode ser criada tanto para quando você for fazer uma alteração em um arquivo, quando para adicionar outro arquivo dentro do projeto ou mesmo excluir.
97 |
98 | Obs. *Lembrem que eu estou aqui editando um arquivo markdown, porém isso tudo vale para qualquer tipo de arquivo com qualquer extensão*
99 |
100 | * Nesse caso vamos adicionar um novo arquivo para desenvolver a nossa feature `Botão`
101 |
102 | * Então a primeira coisa que fazemos é `git checkout -b "novo-botao"`, assim criando uma branch para ele
103 | Esse comando além de criar a branch já entra nela com o checkout, inclusive se olharmos agora aqui no meu VSCode, estamos dentro dela.
104 |
105 | * Vou então criar o arquivo, criar o `botão.md` "aqui eu crio o botão"
106 |
107 | * E agora fazemos o passo a passo que já sabemos, colocamos a nossa alteração em stagging com o `git add .` e commitamos com o `git commit -m "novo botão"`
108 |
109 | * Para enviarmos agora que vai ser diferente. Vocês lembram que utilizávamos o `git push orgin main` né? Porém main era aquela branch principal. Agora então usaremos `git push origin botao`
110 |
111 | Agora se olharmos o nosso Github, veremos que tem 2 branches, a `main` e a `botao`
112 |
113 |
114 |
115 | Vamos supor que eu ainda não tivesse terminado de desenvolver o botão, eu poderia continuar tranquilamente na branch `botao` até terminar!
116 |
117 | Mas Rafa, e se eu precisasse por algum motivo voltar naquela branch `main` e desenvolver a partir do que deixei lá? Sem problemas, a única coisa que você precisa fazer nesse caso é `git checkout main`, e pra voltar depois é só `git checkout botao` novamente
118 |
119 | Beleza! Agora desenvolvi tudo o que queria aqui na branch `botao`, como que junto ela com a main sem problemas?
120 |
121 | ## Merge
122 |
123 | * Agora o que precisamos fazer é ir para a nossa branch principal `git checkout main` e lá faremos o merge com a branch `botao` que criamos, com `git merge botao`
124 |
125 | Pronto, agora tudo o que tinha de alteração na branch `botao` juntou com a `main`
126 |
127 | * Para finalizar então, vamos jogar lá no Github isso tudo com o `git push origin main`
128 |
129 | ## Clone
130 |
131 | Como vocês podem baixar meu código?
132 |
133 | Sempre que você entrar em um repositório, seja o seu ou o de qualquer outra pessoa, terá esse botão `Code`, que quando você clica aparece um link:
134 |
135 |
136 |
137 | * Você irá copiar esse link e levar ele lá pro nosso terminal
138 |
139 | * O comando para puxar o projeto para a sua máquina é o `git clone https://github.com/rafaballerini/GitTutorial.git`
140 |
141 | Não é necessário criar um repositório antes disso, como fizemos anteriormente com o `git init`. Dessa vez, basta abrir o terminal e clonar o projeto e tudo aparecerá!
142 |
143 | ## Pull
144 |
145 | E se eu fizer uma alteração no repositório, como vocês podem atualizar na máquina de vocês?
146 |
147 | * Basta vocês executarem o comando `git pull`, ele irá puxar todas as alterações feitas no repositório do Github para o seu repositório local
148 |
149 | ## Fork
150 |
151 | Mas Rafa quando eu fiz o clone do seu repositório ele não apareceu no meu Github.
152 | Existe a ferramenta `fork`, que é bem mais simples para fazer isso
153 | Você só precisa apertar nesse botão dentro do repositório e TCHANAM! Ele aparece automaticamente lá na sua conta:
154 |
155 |
156 |
157 | ## Pull request
158 |
159 | O último conceito que quero ensinar para vocês é o de Pull Request, vamos entender como ele funciona:
160 |
161 | * Após você ter dado um fork no projeto e ele ter ido pra sua conta, você poderá alterar o projeto e adicionar as funcionalidades que deseja
162 |
163 | * Você pode por exemplo dar um fork no meu repositório de `Formulário` para adicionar uma validação de campos ou qualquer outra coisa que acha válido
164 |
165 | * Depois disso, você poderá salvar o projeto, dar o `git add .`, `git commit -m "validação de botões"` e `git push origin main`
166 |
167 | Quando você for olhar o seu Github, verá que existe uma mensagem parecida com a seguinte:
168 |
169 |
170 |
171 | Isso significa que a branch do seu repositório está 1 commit "na frente" da branch original
172 |
173 | O que você deve perceber agora é esse botão que aparece em seguida:
174 |
175 |
176 |
177 | Ele servirá para caso você deseje enviar para o dono do repositório original uma solicitação de pull, ou seja, fazer com que ele puxe as alterações que você fez no seu repositório para o repositório dele, original
178 |
179 | Ao clicar nesse botão, você será direcionado para uma página que fará a avaliação se esse `pull request` terá conflitos ou não com o código no repositório original. Caso não tenha, bastão clicar no botão de `Create pull request`
180 |
181 |
182 |
183 | Você irá colocar um nome intuitivo, que demonstre a funcionalidade adicionada e o ideal é que você também crie uma boa descrição do que desenvolveu, não somente explicando o que é, mas ensinando ao dono do repositório original a forma como ele poderá testar também
184 |
185 | Depois disso, basta esperar para que o dono da branch original aceite o seu pull request
186 |
187 | ## Finalização
188 |
189 | Existem diversas outras funcionalidades do Git e do Github, porém tenho certeza que com tudo isso que vocês viram hoje vocês já conseguem desenvolver um projeto de uma forma bem legal
190 |
191 | Recomendo sempre vocês darem uma olhada na [documentação do Git](https://git-scm.com/doc), pois qualquer dúvida que apareça pode ser respondida por lá na explicação
192 |
193 | **Não esqueçam de deixar o like e se inscrever no [canal do Youtube](https://youtube.com/RafaellaBallerini) ❤**
194 |
195 | Até semana que vem, um beijo!
196 |
--------------------------------------------------------------------------------