Descomplicando o controle de versão com git
-
Upload
humberto-streb -
Category
Technology
-
view
116 -
download
0
description
Transcript of Descomplicando o controle de versão com git
![Page 1: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/1.jpg)
Descomplicando o controle de versão com Git
Humberto Streb
![Page 2: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/2.jpg)
2
Humberto Streb
Bel. Sistemas de Informação
Desenvolvedor Java
Entusiasta Linux
Curioso
github.com/hstreb
![Page 3: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/3.jpg)
3
Controle de versão
“É um software com a finalidade de gerenciar diferentes versões no desenvolvimento de um
documento qualquer.”
[Wikipédia]
![Page 4: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/4.jpg)
4
Projetos pequenos
![Page 5: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/5.jpg)
5
Projetos grandes
![Page 6: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/6.jpg)
6
Vantagens
Histórico de alterações
Facilidade de reverter alterações
Facilidade de ramificar o projeto
Facilidade de marcar (tag) dados
Backup do código fonte
![Page 7: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/7.jpg)
7
Git
“É um sistema de controle de versão distribuido gratuito e open source desenhado
para lidar com tudo, desde pequenos até grandes projetos com rapidez e eficiência.”
[git-scm.com]
![Page 8: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/8.jpg)
8
Git
Foco em velocidade
Foco no design simples
Suporte robusto a desenvolvimento não linear (milhares de branches paralelos)
Totalmente distribuído
Capaz de lidar eficientemente com grandes projetos como o kernel do Linux
![Page 9: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/9.jpg)
9
Empresas que utilizam Git
![Page 10: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/10.jpg)
10
Configuração
$ git config --global user.name "Humberto Streb"
$ git config --global user.email "[email protected]"
![Page 11: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/11.jpg)
11
Entendendo os estados
![Page 12: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/12.jpg)
12
Área de trabalho
É onde são carregados os arquivos vindo de um repositório (checkout). Nela estão os arquivos
vigentes.
![Page 13: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/13.jpg)
13
Área de preparação
É uma área temporária, que contem as informações do próximo commit.
![Page 14: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/14.jpg)
14
Diretório do Git
É onde são armazenados as informações sobre o último commit.
![Page 15: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/15.jpg)
15
Mãos na massa
![Page 16: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/16.jpg)
16
init
Esse comando irá inciar um repositório local na pasta onde foi executado
![Page 17: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/17.jpg)
17
init
$ mkdir tutorial-git
$ cd tutorial-git
$ git init
Initialized empty Git repository in .../tutorial-git/.git/
![Page 18: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/18.jpg)
18
status
Mostra o estado atual do projeto
![Page 19: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/19.jpg)
19
status
$ git status
# On branch master
#
# Initial commit
#
nothing to commit (create/copy files and use "git add" to track)
![Page 20: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/20.jpg)
20
Criamos a classe App.java
![Page 21: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/21.jpg)
21
status
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# App.java
nothing added to commit but untracked files present (use "git add" to track)
![Page 22: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/22.jpg)
22
add
Adiciona os arquivos para o índice do git.
![Page 23: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/23.jpg)
23
add
$ git add .
$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: App.java
#
![Page 24: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/24.jpg)
24
commit
Salva as alterações contidas no índice para o repositório do git
![Page 25: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/25.jpg)
25
commit
$ git commit -m "Iniciando o projeto"
[master (root-commit) aab8232] Iniciando o projeto
1 file changed, 7 insertions(+)
create mode 100644 App.java
![Page 26: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/26.jpg)
26
commit
$ git commit -m "Iniciando o projeto"
[master (root-commit) aab8232] Iniciando o projeto
1 file changed, 7 insertions(+)
create mode 100644 App.java
$ git status
# On branch master
nothing to commit, working directory clean
![Page 27: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/27.jpg)
27
Criando teste com valores fixos
![Page 28: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/28.jpg)
28
commit
git add .
$ git commit -m "Teste com valores fixos"
[master 0dc82d0] Teste com valores fixos
1 file changed, 5 insertions(+), 1 deletion(-)
![Page 29: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/29.jpg)
29
log
Mostra o histórico de commits
![Page 30: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/30.jpg)
30
log
$ git log
commit 0dc82d02b8552dea278a1dfa118d3d722a33f380
Author: Humberto Streb <[email protected]>
Date: Thu Sep 12 10:52:29 2013 -0300
Teste com valores fixos
commit aab8232b734b7dbd133f07d13afc2fbf642183d1
Author: Humberto Streb <[email protected]>
Date: Thu Sep 12 10:48:48 2013 -0300
Iniciando o projeto
![Page 31: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/31.jpg)
31
Adicionando leitura do teclado
![Page 32: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/32.jpg)
32
add e commit no mesmo comando
git commit -a -m "Ler do teclado"
1 file changed, 6 insertions(+), 1 deletion(-)
![Page 33: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/33.jpg)
33
tag
Serve como marcação para um determinado momento do projeto
![Page 34: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/34.jpg)
34
tag
$ git tag v-1
$ git tag
v-1
![Page 35: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/35.jpg)
35
branch
Esse comando cria uma ramificação do projeto
![Page 36: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/36.jpg)
36
branch
$ git branch
* master
$ git branch tratarExcecao
$ git checkout tratarExcecao
Switched to branch 'tratarExcecao'
$ git branch
master
* tratarExcecao
![Page 37: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/37.jpg)
37
$ git checkout -b tratarExcecao
branch
![Page 38: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/38.jpg)
38
Adicionando o tratamento de exceções no branch
![Page 39: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/39.jpg)
39
$ git commit -a -m "Tratamento exceção"
[tratarExcecao ecf16a9] Tratamento exceção
1 file changed, 9 insertions(+), 3 deletions(-)
Adicionando o tratamento de exceções no branch
![Page 40: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/40.jpg)
40
checkout
É o comando responsável por “atualizar” para o branch que deseja ir.
![Page 41: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/41.jpg)
41
checkout para o master
$ git checkout master
Switched to branch 'master'
![Page 42: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/42.jpg)
42
O arquivo App.java voltou para o formato anterior
![Page 43: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/43.jpg)
43
Adição do método processaResposta
![Page 44: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/44.jpg)
44
$ git commit -a -m "Adicção método processaResposta"
[master 4c163d6] Adicção método processaResposta
1 file changed, 4 insertions(+)
Adição do método processaResposta
![Page 45: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/45.jpg)
45
Corrigindo o último commit
$ git log
...
Adicção método processaResposta
$ git commit --amend -m "Adição método processaResposta"
[master 9deaa21] Adição método processaResposta
1 file changed, 4 insertions(+)
$ git log
...
Adição método processaResposta
![Page 46: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/46.jpg)
46
dif
Mostra as diferenças entre o branch atual e o destinatário
![Page 47: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/47.jpg)
47
$ git checkout tratarExcecao
Switched to branch 'tratarExcecao'
dif
![Page 48: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/48.jpg)
48
$ git diff master
diff --git a/App.java b/App.java
index 3edc65f..15b4da3 100644
--- a/App.java
+++ b/App.java
@@ -4,14 +4,16 @@ public class App {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
-
- System.out.println("Digite um numero:");
- int numero = scanner.nextInt();
- processaResultado(numero);
- }
-
- private static void processaResultado(int numero) {
+ int numero;
+ try {
+ System.out.println("Digite um número:");
+ numero = scanner.nextInt();
+ } catch (Exception e) {
+ System.out.println("Não foi possível ler o valor digitado! O valor será 0.");
+ numero = 0;
+ }
+
int dobro = numero * numero;
System.out.println("O dobro: " + dobro);
![Page 49: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/49.jpg)
49
merge
Responsável por fazer a concatenação das diferenças entre os branches
![Page 50: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/50.jpg)
50
Fazendo merge com o master
$ git merge master
Auto-merging App.java
Merge made by the 'recursive' strategy.
App.java | 4 ++++
1 file changed, 4 insertions(+)
![Page 51: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/51.jpg)
51
Adicionando o método lerInteiro
![Page 52: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/52.jpg)
52
Adicionando o método lerInteiro
$ git checkout master
Switched to branch 'master'
$ git commit -a -m "Adição método lerInteiro"
[master e41e17b] Adição método lerInteiro
1 file changed, 9 insertions(+), 4 deletions(-)
![Page 53: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/53.jpg)
53
Fazendo merge com o master (2)
$ git checkout tratarExcecao
Switched to branch 'tratarExcecao'
$ git merge master
Auto-merging App.java
CONFLICT (content): Merge conflict in App.java
Automatic merge failed; fix conflicts and then commit the result.
![Page 54: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/54.jpg)
54
![Page 55: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/55.jpg)
55
Consertar o método lerInteiro
![Page 56: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/56.jpg)
56
Fazer o merge do branch para o master
$ git commit -a -m "Tratar exceção no método lerInteiro"
[tratarExcecao c7053bb] Tratar exceção no método lerInteiro
$ git checkout master
Switched to branch 'master'
$ git merge tratarExcecao
Updating e41e17b..c7053bb
Fast-forward
App.java | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
![Page 57: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/57.jpg)
57
Colaborando
![Page 58: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/58.jpg)
58
remote
É utilizado para adicionar um repositório remoto ao projeto
![Page 60: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/60.jpg)
60
clone
É utilizado para “clonar” um repositório.
![Page 61: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/61.jpg)
61
clone
$ git clone [email protected]:hstreb/tutorial-git.git
Cloning into 'projeto'...
remote: Counting objects: 27, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 27 (delta 9), reused 24 (delta 9)
Receiving objects: 100% (27/27), done.
Resolving deltas: 100% (9/9), done.
![Page 62: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/62.jpg)
62
push
Este comando envia as alterações contidas no repositório local para o repositório remoto
![Page 63: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/63.jpg)
63
push
$ git push origin master
Warning: Permanently added the RSA host key for IP address '192.30.252.131' to the list of known hosts.
Counting objects: 24, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (16/16), done.
Writing objects: 100% (24/24), 2.26 KiB, done.
Total 24 (delta 9), reused 0 (delta 0)
To [email protected]:hstreb/tutorial-git.git
* [new branch] master -> master
![Page 64: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/64.jpg)
64
push branches
$ git push origin tratarExcecao
Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts.
Total 0 (delta 0), reused 0 (delta 0)
To [email protected]:hstreb/tutorial-git.git
* [new branch] tratarExcecao -> tratarExcecao
![Page 65: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/65.jpg)
65
pull
É utilizado para baixar as alterações contidas no repositório remoto
![Page 66: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/66.jpg)
66
pull
$ git pull origin master
From github.com:hstreb/tutorial-git
* branch master -> FETCH_HEAD
Updating c7053bb..85cde87
Fast-forward
README.md | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 README.md
![Page 67: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/67.jpg)
67
stash
Stash é utilizado para adicionar várias alterações em uma pilha, que é armazenada
localmente
![Page 68: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/68.jpg)
68
stash Adicionar alterações
$ git stash
Saved working directory and index state \
"WIP on master: 049d078 added the index file"
HEAD is now at 049d078 added the index file
(To restore them type "git stash apply")
![Page 69: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/69.jpg)
69
stash listar alterações já realizadas
$ git stash list
stash@{0}: WIP on master: 049d078 added the index file
stash@{1}: WIP on master: c264051... Revert "added file_size"
stash@{2}: WIP on master: 21d80a5... added number to log
![Page 70: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/70.jpg)
70
stash aplicar alterações
$ git stash apply
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
#
# modified: App.java
#
![Page 71: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/71.jpg)
71
stash aplicar e retirar da lista as alterações
$ git stash pop
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
#
# modified: App.java
#
![Page 72: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/72.jpg)
72
stash aplicar alterações mais antigas
$ git stash apply@{2}
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
#
# modified: App.java
#
![Page 73: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/73.jpg)
73
stash aplicar alterações mais antigas
{0} representa o último stash que você fez; {1} representa penúltimo, e assim por diante. Essa sintaxe também aparece em outros lugares (show, por exemplo).
![Page 74: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/74.jpg)
74
projeto
![Page 75: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/75.jpg)
75
Links
http://git-scm.comhttps://github.com/hstreb/tutorial-git
![Page 76: Descomplicando o controle de versão com git](https://reader034.fdocument.pub/reader034/viewer/2022052212/54c4b5734a7959f77e8b4582/html5/thumbnails/76.jpg)
76
Muito obrigado!