Git & GitHub
Git & GitHub
GitHub
O QUE É E COMO UTILIZAR
Versionamento de código
O que é?
O versionamento de código,
também conhecido como controle
de versão, é uma prática que
consiste em acompanhar e
registrar todas as alterações feitas
nos arquivos de código fonte de
um projeto ao
– NEIL ARMSTRONG
longo do tempo.
Sistemas de controle de versão
O que é?
Os sistemas de controle de versões são
ferramentas de software que ajudam as
equipes de software a gerenciar as alterações
ao código fonte ao longo do tempo.
Registra o histórico de atualizações de um arquivo;
Para trabalhar em um projeto você precisa instalar o cliente e fazer o download de todo o
código e sempre vai depender do servidor para gravar suas modificações, se ele não
estiver no ar você não consegue fazer seus commits, e isso te impede de trabalhar.
•SVN
•CVS
– NEIL
•Perforce
ARMSTRONG
VCS Distribuído (DVCS)
No VCS distribuído todo mundo tem a cópia do software em sua máquina, pode
trabalhar localmente e depois enviar e integrar seu código em um repositório intermediário usado
para isso, no caso do GIT chamamos esse locais de remotes.
Como todo mundo tem o código, temos múltiplos backups e caso o repositório de alguém se
corrompa, podemos facilmente pegar a cópia de outro desenvolvedor e seguir trabalhando.
Como temos uma cópia local, podemos trabalhar offline e depois enviar e integrar o código com dos
nossos colegas, e saiba que trabalhar local é bem mais rápido.
A criação de branchs é rápida e objetiva porque é tudo local e não precisa contatar um servidor
central toda a vez que for criar uma branch.
A única coisa que precisa ficar claro é a curva de aprendizado pode ser maior do que sistemas mais
simples e centralizados, contudo, o poder, a flexibilidade, a segurança e a velocidade de trabalhar
superam esse detalhe.
•GIT
– NEIL
•Mercurial ARMSTRONG
•Bazaar
Git
O que é?
O Git é um sistema de controle de versão distribuído,
o que significa que um clone local do projeto é um
repositório de controle de versão completo. Esses
repositórios locais totalmente funcionais facilitam o
trabalho offline ou remoto. Os desenvolvedores
confirmam o trabalho localmente e depois
sincronizam a cópia do repositório com a cópia no
servidor. Esse paradigma é diferente do controle de
versão centralizado, no qual os clientes devem
sincronizar o código com um servidor antes de criar
novas versões
– NEIL do código.
ARMSTRONG
Fluxo básico no Git
• git clone -> clona um repositório Git existente
para um novo diretório (pasta) local.
– NEIL ARMSTRONG
GitBash
O que é?
O Git Bash é uma ferramenta poderosa que
facilita o gerenciamento de projetos versionados
pelo Git. No ambiente de trabalho, dominar os
comandos essenciais no Git Bash é fundamental
para otimizar o fluxo de trabalho e colaboração.
– NEIL ARMSTRONG
Comandos
• git config -> exibe todas as informações a
respeito da ferramenta.
– NEIL ARMSTRONG
Comandos Branch
• git config init.defaultBranch -> exibe o
nome da Branch padrão.
– NEIL ARMSTRONG
AUTENTICANDO VIA TOKEN
Autenticando
Para autenticar você deve acessar sua conta do
GitHub e criar um novo repositório. Feito isso,
copie o link do repositório.
– NEIL ARMSTRONG
Clonando o repositório
Para clonar um repositório sem estar autenticado,
você deve utilizar o seguinte comando.
– NEIL ARMSTRONG
Salvando credenciais
Para saber como a sua credencial está salva, você
deve utilizar o seguinte comando:
– NEIL ARMSTRONG
Verificar token e credenciais
Para você verificar seu token e suas credenciais você
deve utilizar os seguintes comando:
– NEIL ARMSTRONG
Autenticando via Chave SSH
Uma chave SSH é a credencial de acesso para o protocolo de rede SSH (shell
seguro). Esse protocolo de rede segura autenticado e criptografado é usado para
comunicação remota entre máquinas em rede aberta não segura.
Esse método funciona com um par de chaves, sendo chave pública e privada
que fica presente no seu computador.
Após inserir o comando, será necessário você selecionar o local para salvar a
– NEIL
chave, ARMSTRONG
se quiser salvar no local ‘‘padrão“ aperte ‘‘enter“, logo em seguida você
deve escolher uma frase de segurança
SSH-AGENT
Para adicionar uma chave ssh-agent, você deve utilizar o seguinte comando: eval
“$(ssh-agent –s)”.
Para você visualizar as suas chaves você deve utilizar os seguintes comandos:
Para exibir o conteúdo da chave você deve utilizar o seguindo comando: cat
id_ed25519.pub.
Para– você
NEIL ARMSTRONG
adicionar essa a chave SSH ao GitHub você deve copiar o conteúdo e
inseri-lo lá na área de chaves SSH em configurações. Mas para isso você deve
clicar em “new SSH key”.
Criando e Clonando Repositórios
Criando e clonando repositórios
Existem duas formas de obter um repositório Git na sua máquina:
• 1: Transformando um diretórios local que não está sobre controle de versão,
num repositório Git;
• 2: Clonando um repositório Git existente.
Para você criar uma pasta através do GitBash você deve utilizar o seguinte
comando: $ mkdir nome-da-pasta.
Para você entrar em uma pasta você deve utilizar o seguinte comando: $ cd
nome-da-pasta/.
– NEIL ARMSTRONG
Transformando pasta em diretório
Git
Para transformar uma pasta em um diretório git, você deve utilizar o comando: $
git init.
Para clonar um repositório Git, utilize o seguinte comando: $ git clone link-do-
repositório-que-quer-copiar.com.
Caso você queira mudar o nome da pasta do repositório clonado, você deve
inserir o nome da pasta depois do link do repositório. Exemplo: $ git clone link-
do-repositório-que-quer-copiar.com nome-da-pasta.
Para exibir o conteúdo e os dados do repositório você deve acessar a pasta “.git”
pelo GitBash e inserir o seguinte comando: $ cat config.
– NEIL ARMSTRONG
Conectando um repositório local com um
repositório remoto
Para estar conectando um repositório local com um repositório remoto, você deve
utilizar o seguinte comando: $ git remote add nome-repositorio-remoto link-
do-repositorio-remoto.
– NEIL ARMSTRONG
Salvando Alterações no Repositório
Local
Salvando alterações no repositório
local
git status -> é utilizado para realizar a exibição do status da árvore de trabalhos e
da área de preparação. E para exibir o estado dos arquivos. Mostra quais arquivos
não foram adicionados para serem adicionados ao commit.
Após adicionar os arquivos desejados para salvar, você deve criar um commit.
Para criar um commit, você deve utilizar o seguinte comando: $ git commit -m
“Mensagem-desejada”.
– NEIL $ARMSTRONG
O comando git log exibe as commit realizadas no repositório criado. Com dados
como autor, data e a identidade do commit (código).
Ignorando um arquivo/pasta no
commit
Para ignorar um arquivo ou pasta ao realizar o commit você deve utilizar o
seguinte comando: $ echo nome-da-pasta/ > .gitignore.
Para desfazer essa ação você deve utilizar o mesmo comando, porém sem o
nome da pasta. Exemplo: $ echo > .gitignore.
Esse comando serve para caso, você queira salvar algumas pastas ou arquivos,
porém você não quer salvar tudo e quer que uma ou duas pastas continuem como
estão sem salvar.
– NEIL ARMSTRONG
Desfazendo Alterações no repositório
local
Desfazendo alterações no repositório
local
Caso você tenha criado um repositório sem querer ou em um local errado você
pode desfazer essa ação utilizando o comando: $ rm -rf .git, esse comando irá
excluir a pasta .git que é a pasta do repositório.
Para alterar a mensagem do último commit que você realizou você deve utilizar o
seguinte comando: $ git commit --amend -m“mensagem-do-commit”.
Para você adicionar somente os arquivos dos commits passados sem desfazer o
mesmo, e adicionar esses arquivos a sua árvore de trabalho você deve utilizar o
seguinte comando: $ git reset --mixed código-do-commit ou $ git reset
código-do-commit.
Para apagar por completo um commit criado você deve utilizar o seguinte
comando: $ git reset --hard código-do-commit.
Para obter um histórico mais detalhado das alterações que foram feitas nos
commit você deve utilizar o seguinte comando: $ git reflog (esse comando exibe
mais informações do que o comando $ git log).
– NEIL ARMSTRONG
Removendo arquivos da sua área de
preparação
Para remover um arquivo de sua área de preparação você pode utilizar os
seguintes comandos: $ git reset nome-pasta/nome-arquivo.py & $ git
restore --staged nome-pasta/nome-arquivo.py.
– NEIL ARMSTRONG
Enviando e Baixando Alterações
com o Repositório Remoto
Desfazendo alterações no repositório
local
Caso você tenha criado um repositório sem querer ou em um local errado você
pode desfazer essa ação utilizando o comando: $ rm -rf .git, esse comando irá
excluir a pasta .git que é a pasta do repositório.
Para alterar a mensagem do último commit que você realizou você deve utilizar o
seguinte comando: $ git commit --amend -m“mensagem-do-commit”.