Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Implantação de um Sistema de 
Controle de Versões Distribuído
Apresentação
Com o crescimento do desenvolvimento de softwares, especialmente entre equipes que atuam 
colaborativamente, o controle de versão se tornou indispensável, uma vez que analistas podem 
editar e modificar arquivos de código-fonte de seus projetos com bastante frequência. Com isso, os 
softwares de controle de versão obtiveram larga expansão no mercado, visto que foram projetados 
para promover segurança no controle de modificações, assim como facilidade de uso por meio de 
funcionalidades intuitivas e bem definidas.
Nesta Unidade de Aprendizagem, você vai estudar sobre a criação de repositórios Git e GitHub, a 
associação entre esses repositórios, e a transferência de arquivos do repositório local para o 
GitHub.
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Criar repositórios Git e GitHub.•
Relacionar o repositório local com o repositório remoto.•
Transferir repositório local para o GitHub.•
Desafio
Controlar as versões dos códigos-fonte de um projeto de desenvolvimento de sistemas é uma 
questão essencial para equipes que atuam colaborativamente. O planejamento e a execução do 
controle de versão devem seguir os passos elaborados pela coordenação da equipe, que define a 
melhor estratégia com base nos recursos e nos objetivos de cada organização.
Imagine que você precisar elaborar uma estratégia de controle de versão considerando os seguintes 
itens:
 •
n Modificação local do código-fonte pelos analistas.•
n Atualização em servidor centralizado.•
n Atualização de arquivos sempre que determinado código-fonte 
for aprovado.
•
Dessa forma, cite os itens que fazem parte da estratégia de controle de versão elaborada e 
justifique a sua escolha.
Infográfico
Desenvolver sistemas colaborativos, em que diversos desenvolvedores atuam de maneira 
integrada, é cada vez mais comum. No entanto, eventualmente pode ser preciso que determinadas 
funcionalidades sejam tratadas paralelamente por desenvolvedores, e as modificações de uma 
funcionalidade mais crítica devem ser repassadas para as outras durante o desenvolvimento destas.
Um exemplo disso são as manutenções corretivas, que têm maior prioridade de execução e devem 
ser adicionadas às demais alterações, mesmo enquanto estas não estejam concluídas. Essa 
estratégia é implementada no GitHub pela inclusão de branches, os quais definem manutenções 
isoladas que podem ser unidas posteriormente.
Veja no Infográfico a representação dos branches de um projeto no GitHub.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://statics-marketplace.plataforma.grupoa.education/sagah/cee0c66d-7227-4eae-a443-39ab7a5bcf94/3909db29-ab25-4794-9654-ec6697c7ff4b.jpg
Conteúdo do Livro
Controlar as versões dos arquivos de projetos de software é uma atividade essencial para qualquer 
equipe que atua no desenvolvimento colaborativo, uma vez que perder o código-fonte não faz 
parte dos planos de nenhuma organização. Por meio do controle de versão, é possível gerenciar, de 
maneira eficaz, todas as modificações que são realizadas nos códigos-fontes, como a data e a hora, 
o responsável pela modificação, e o que foi modificado em cada arquivo. Todas essas 
funcionalidades são características essenciais das ferramentas de controle de versão Git e GitHub, 
que atuam integradas como controle de versão local e remoto, respectivamente.
No capítulo Implantação de um sistema de controle de versões distribuído, da obra Programação 
Back End II, você vai estudar sobre como criar repositórios Git e GitHub, relacionar o repositório 
local com o remoto, bem como transferir do repositório local para o remoto.
Boa leitura.
PROGRAMAÇÃO 
BACK END II 
Maurício de Oliveira Saraiva
Implantação de um 
sistema de controle de 
versões distribuído
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:
 � Criar repositórios Git e GitHub.
 � Relacionar o repositório local com o repositório remoto.
 � Transferir o repositório local para o GitHub.
Introdução
Com a evolução da tecnologia da informação, os sistemas se tornaram 
cada vez maiores e mais complexos, exigindo, em muitos casos, a co-
laboração entre diversos desenvolvedores de uma ou mais equipes, de 
modo que as tarefas possam ser divididas em grupos especializados.
A partir desse processo colaborativo, identificou-se a necessidade de 
controlar as versões dos arquivos dos projetos em repositórios locais e 
remotos, uma vez que muitos arquivos são modificados isoladamente 
pelos desenvolvedores.
Neste capítulo, você irá estudar sobre a criação de repositórios Git e 
GitHub para o controle de versão de arquivos, o relacionamento entre o 
repositório local e o repositório remoto e a transferência do repositório 
local para o GitHub.
Repositórios Git e Github
Normalmente utilizados por programadores para gerenciar as versões de seus 
códigos-fonte, Git e GitHub são repositórios open source que implementam 
o versionamento eficiente de arquivos. O gerenciamento ocorre pelo controle 
das alterações realizadas nos arquivos utilizados em projetos de qualquer 
natureza (GIT..., 2019b; GITHUB..., 2019).
As versões são gerenciadas pelos usuários, em âmbito local (Git) ou remoto 
(GitHub), e estes decidem o momento em que elas serão registradas/atualizadas. 
Isso significa que todas as versões que foram definidas podem ser restauradas, 
permitindo, assim, um bom controle de versão dos arquivos.
Git
Criado por Linus Torvalds, o Git é um sistema distribuído de controle de versão 
que tem como objetivo gerenciar as modificações realizadas nos arquivos 
de um determinado projeto no âmbito local. Embora tenha sido criado com 
o objetivo de controlar as versões de sistemas em desenvolvimento, pode 
gerenciar o histórico de modificações em arquivos de qualquer tipo de projeto 
(GIT..., 2019a).
O Git trabalha com uma estrutura em forma de árvore, cujas modificações 
realizadas podem ser organizadas em ramificações (branches) para facilitar 
a administração do conteúdo. O controle de versão implementado pelo Git 
facilita o trabalho colaborativo, registrando dados das modificações realizadas 
nos arquivos, bem como seus responsáveis (GIT..., 2019c).
Este sistema pode ser baixado em seu site oficial, que contém links para 
sua documentação e fórum de discussão, assim como para os downloads, que 
estão disponíveis para diversas plataformas, como Windows, Linux/Unix e 
Mac OS X.
Acesse o link a seguir para fazer o download do Git.
https://qrgo.page.link/bCvB1
Implantação de um sistema de controle de versões distribuído2
A instalação do Git é simples e não requer nenhuma configuração adicional: 
basta clicar no botão next das janelas que aparecem durante a execução do 
assistente de instalação.
Após concluir a instalação, pode-se criar um repositório local por meio 
de sua interface gráfica, Graphical User Interface (GUI), ou por linha de 
comando (Git Bash). Neste capítulo, apresentaremos a criação dos repositórios 
por meio de sua interface gráfica.
Repositório Git
Criar um repositório local é o primeiro passo para começar a trabalhar com 
o Git. Para isso, clique com o botão direito do mouse em qualquer pasta do 
gerenciador de arquivos de seu computador e selecione Git GUI Here, conforme 
ilustra a Figura 1.
Figura 1. Acessando o Git GUI.
Uma janela do Git GUI que apresenta a opção criar um novo repositório 
(Create New Repository) será aberta, conforme ilustrado na Figura 2. 
3Implantação de um sistema de controle de versões distribuído
Figura 2. Janela principal do Git GUI.
Clique na opção indicada anteriormente e selecione o local em que o projeto 
está instalado em seu computador. Em seguida, clique no botão Create para 
confirmar a criação do novo repositório, conforme apresentado na Figura 3.
Figura 3. Selecionando a pasta do repositório.
Após a criação do repositório, uma subpastanomeada .git será criada na 
pasta do projeto. Essa subpasta contém os elementos que farão o gerenciamento 
das versões dos arquivos do projeto. 
Implantação de um sistema de controle de versões distribuído4
A interface gráfica apresentará a lista de arquivos do repositório, cujo status 
da corrente branch encontra-se como Unstaged Changes, o que significa que as 
mudanças ainda não foram organizadas. Neste momento é preciso configurar 
apenas o usuário e o e-mail, que futuramente serão utilizados para acessar o 
repositório remoto (GitHub).
Para isso, acesse o menu Edit — Options da interface gráfica e preencha 
User Name e Email Address nos dois lados da janela, conforme ilustrado na 
Figura 4. As demais opções não precisam ser modificadas.
Figura 4. Inserindo o nome do usuário e o e-mail.
GitHub
O GitHub é um serviço open source de hospedagem de código-fonte que 
permite o controle de versão de arquivos de projetos de diversos tipos. 
Os arquivos, que são armazenados em branches, podem ser sincronizados 
com repositórios locais Git, permitindo fazer uploads ou downloads quando 
necessário (GITHUB..., 2019).
5Implantação de um sistema de controle de versões distribuído
Este serviço pode ser acessado no link a seguir. 
http://www.github.com/
Acesse o site indicado e faça o login (Sign in) com sua conta ou crie (Sign 
up) uma conta, caso ainda não tenha. Para o registro do login é preciso informar 
um nome de usuário inédito, assim como um e-mail válido e uma senha que 
possua entre oito e 15 caracteres, contendo números e letras.
Repositório GitHub
Após entrar no GitHub, clique na opção New, no canto superior esquerdo da 
janela, para criar um repositório remoto. Preencha o nome do repositório e 
sua descrição. Após, selecione se o repositório é público ou privado e clique 
em Create repositor, conforme ilustra a Figura 5. 
Figura 5. Criando um repositório remoto.
Implantação de um sistema de controle de versões distribuído6
Relacionamento entre o repositório local e 
repositório remoto
Uma vez que os repositórios local (Git) e remoto (GitHub) tenham sido criados, 
é possível relacioná-los de modo que os arquivos do repositório local possam 
ser copiados para o repositório remoto, ou vice-versa.
Para isso, acesse a interface gráfica do Git e selecione a opção Add do 
menu Remote, como ilustra a Figura 6.
Figura 6. Adicionando um repositório remoto.
Na janela Add New Remote, como mostra a Figura 7, preencha o nome 
do repositório remoto e o link desse repositório no serviço GitHub. Neste 
momento, o propósito é associar os repositórios local e remoto. Sendo assim, 
selecione a opção Do Nothing Else Now para somente deixá-los relacionados.
7Implantação de um sistema de controle de versões distribuído
Figura 7. Nome e localização do repositório remoto.
A partir do momento em que a associação é realizada, o menu Remote 
passa a apresentar as opções que permitem manipular o repositório remoto, 
conforme ilustrado na Figura 8.
Figura 8. Opções de manipulação do repositório remoto.
Implantação de um sistema de controle de versões distribuído8
Transferência do repositório local para o GitHub
Para transferir os arquivos do repositório local para o Github é preciso adicioná-
-los na área Staged, localizada logo abaixo da área Unstaged na interface Git, 
conforme mostra a Figura 9. Para isso, selecione os arquivos desejados e clique 
na opção Stage Changed e, após, confirme clicando em Sim.
Figura 9. Execução do comando Commit.
Esta operação faz com que os arquivos sejam movidos para a área Staged 
Changes da interface gráfica Git. Preencha um comentário em Commit Message 
e clique no botão Commit na caixa ao lado. Após, clique no botão Push, que 
fica logo abaixo do botão Commit.
Verifique o nome do repositório remoto e confirme no botão Push da 
janela, conforme apresentado na Figura 10.
9Implantação de um sistema de controle de versões distribuído
Figura 10. Execução do comando Push.
A Figura 11 apresenta o resultado da execução do upload dos arquivos, 
após a execução do Push.
Figura 11. Resultado do push.
Implantação de um sistema de controle de versões distribuído10
Agora o repositório remoto (GitHub) apresenta os arquivos do projeto que 
foram transferidos do repositório local (Git), conforme ilustrado na Figura 12.
Figura 12. Resultado da execução do comando push.
GIT – a free open source distributed version control system. Git/Software Freedom Con-
servancy, New York, 2019a. Disponível em: https://git-scm.com/. Acesso em: 21 ago. 2019.
GIT – Getting Started – A Short History of Git. Git/Software Freedom Conservancy, New 
York, 2019b. Disponível em: https://git-scm.com/book/en/v2/Getting-Started-A-Short-
-History-of-Git. Acesso em: 21 ago. 2019.
GIT – Reference. Git/Software Freedom Conservancy, New York, 2019c. Disponível em: 
https://git-scm.com/docs. Acesso em: 21 ago. 2019.
11Implantação de um sistema de controle de versões distribuído
GITHUB – The world’s leading software development platform. GitHub, San Francisco, 
2019. Disponível em: https://github.com/. Acesso em: 21 ago. 2019.
Leitura recomendada
AQUILES, A.; FERREIRA, R. Controlando versões com Git e GitHub. São Paulo: Casa do 
Código, 2014. 220 p.
Implantação de um sistema de controle de versões distribuído12
 
Dica do Professor
O GitHub é um repositório open source para a publicação de material relativo ao desenvolvimento 
de sistemas, como arquivos de código-fonte e projetos de software. Além de gerenciar o controle 
de versão de arquivos, possui diversas outras funcionalidades que auxiliam a comunidade de 
desenvolvimento de sistemas.
Nesta Dica do Professor, conheça sobre a busca de conteúdo no GitHub.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/9b4995433705717d44daab4a9fe11541
Exercícios
1) Gerenciar as modificações feitas nos códigos-fonte dos projetos é uma atividade 
fundamental para quem trabalha com o desenvolvimento de softwares, sendo o Git um dos 
programas mais utilizados para o versionamento local de arquivos. Considerando as 
definições do Git, de que forma ele organiza localmente as informações das versões dos 
arquivos?
A) Registra as informações dos arquivos no arquivo readme.md.
B) Cria uma pasta chamada src e registra nela as informações dos projetos.
C) Utiliza uma pasta chamada .git e nela deposita as informações dos arquivos.
D) O gerenciamento ocorre pelo modo GNU, que possui as configurações dos arquivos.
E) Registra as informações das versões dos arquivos em uma pasta chamada model.
2) Considerando que o sistema de controle de versões Git foi instalado para gerenciar as 
versões dos arquivos de código-fonte de um projeto de desenvolvimento de um sistema, 
indique a alternativa que considera quais campos precisam ser configurados nas opções do 
Git logo após a criação do repositório, para que futuramente o Git possa se conectar com o 
repositório remoto.
A) E-mail e senha do usuário.
B) Nome e senha do usuário.
C) E-mail do usuário e local do repositório.
D) Nome do usuário e local do repositório.
E) Nome e e-mail do usuário.
3) Git é um sistema de controle de versão de arquivos que auxilia no desenvolvimento de 
sistemas e que se integra com o GitHub para a transferência de arquivos do repositório local 
para o remoto. Quando existe um repositório remoto no GitHub, quais dados precisam ser 
configurados no Git para fazer o relacionamento entre esses repositórios?
A) Nome do usuário do repositório GitHub e nome do repositório.
B) Nome do repositório GitHub e e-mail do dono do repositório.
C) Nome do usuário e a senha do repositório GitHub.
D) Nome do repositório e caminho do repositório no GitHub.
E) Nome do usuário do repositório GitHub e caminho do repositório remoto.
4) No GitHub existe a definição de estruturas em forma de árvore que mantêm as histórias do 
repositório em diferentesramos. Essas estruturas permitem a edição de funcionalidades em 
paralelo, por diferentes equipes de desenvolvimento. Com base no exposto, identifique 
como se chamam essas estruturas no serviço GitHub. 
A) Branch.
B) Commit.
C) Merge.
D) Pull request.
E) Push.
5) A transferência de arquivos do repositório local (Git) para o repositório remoto permite que 
os códigos-fonte fiquem disponíveis no serviço web GitHub. Baseando-se na ferramenta de 
interface gráfica Git, selecione a opção que apresenta a ordem das ações que devem ser 
executadas para realizar o upload de arquivos.
A) Adicionar os arquivos à staged area, fazer commit das modificações e realizar o push para o 
repositório remoto.
B) Adicionar os arquivos à unstaged area, fazer commit das modificações e realizar o push para o 
repositório remoto.
C) Realizar commit das modificações, remover os arquivos da staged area e realizar o push para o 
repositório remoto.
D) Adicionar os arquivos à staged area, realizar o push para o repositório remoto, fazer commit 
das modificações e adicionar os arquivos à unstaged area.
E) Realizar o push para o repositório remoto, adicionar os arquivos à staged area, fazer commit 
das modificações e realizar o remote add.
Na prática
O uso de controle de versão dos arquivos de projetos de desenvolvimento de software se tornou 
indispensável desde a implantação e divulgação das ferramentas de versionamento de código-
fonte. Por meio desse controle, as equipes de desenvolvimento atuam de forma organizada e 
segura, uma vez que o gerenciamento de versões permite administrar adequadamente as diversas 
modificações que são realizadas nos sistemas.
Existem diversos softwares de controle de versão existentes no mercado, dos quais o Git e o 
GitHub se destacam por diversos motivos, como a vasta utilização pela comunidade de 
desenvolvimento de software e a facilidade de instalação e de uso.
Para demonstrar a importância do uso de controle de versão de software, confira, Na Prática, o caso 
vivenciado por JP da Silva.
Conteúdo interativo disponível na plataforma de ensino!
Saiba mais
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor:
Como criar um repositório no GitHub e clonar no Windows
Assista ao vídeo a seguir para saber mais sobre a criação de uma conta no GitHub e sobre como 
criar repositórios.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Introdução sobre controle de versão
Leia o documento a seguir para saber mais sobre controle de versão com Git.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Como instalar e configurar o Git no Windows
Assista ao vídeo a seguir para saber mais sobre a instalação e a configuração do Git no Windows, e 
também sobre seus principais comandos.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://www.youtube.com/embed/h1-XZ9Kh1H4
https://git-scm.com/book/pt-br/v2/Come%C3%A7ando-Sobre-Controle-de-Vers%C3%A3o
https://www.youtube.com/embed/SOxafinthys

Mais conteúdos dessa disciplina