top of page

Git e GitHub

Foto do escritor: Amanda NascimentoAmanda Nascimento

Atualizado: 17 de dez. de 2024


▶ Git


Local que iremos fazer o monitoramento do status do código e o rastreamento da versão do nosso programa

Link para instalação: https://git-scm.com/downloads


▶ Github


Local onde iremos armazenar o código que estamos trabalhando no Git.

Link para criar uma conta: https://github.com/


Já com a sua conta ativada no github, clique no canto superior direito na sua foto e em repositórios, e em novo para criar um repositório público. É possível também criar repositórios privados e adicionar a conta de pessoas que poderão ter acesso ao seu repositório.


Repositório é um local para armazenar e organizar arquivos (códigos em python, javascript, imagens, etc) e histórico de versões de projetos digitais. Nas contas gratuitas do GitHub existe uma condição para o uso de repositórios privados, a quantidade de pessoas colaboradoras em cada projeto é limitada a três. Para a inclusão de mais pessoas em repositórios privados, é preciso utilizar um plano pago ou manter a visibilidade como pública.


Podemos ter dois tipos:

Repositório Local (seu computador)

Repositório Remoto (github)





Utilizando o Git

Como exemplo, crie uma pasta em sua área de trabalho (Utilize nomes sem acentos, sem espaço, separado por _ ou letra maíuscula e minúscula: ExemploGit, _ExemploPasta).


Após criar a pasta no windows, clique com o botão direito na pasta e procure por: Git Bash Here.

Note que só irá aparecer se realmente você tiver concluído a instalação do Git.


É importante ressaltar que devemos executar "Git Bash Here" na pasta nova que criamos e que iremos colocar nosso arquivo .py para subir para o GitHub.


No meu caso, criei uma pasta chamada jogosPython e coloquei o arquivo chamado cobrinha.py e abri o Git Bash Here.


Em resumo, Git é o software onde iremos realizar o monitoramento e enviar comandos para subir nosso código ao github que é um "servidor", site, lugar onde iremos armazenar nossos códigos.





Comandos no Git após os procedimentos acima considerando que o acesso entre o computador x conta github estão ok, com as permissões devidas (caso não esteja, mais para baixo existe a opção de credencial ou windows ou SSH:


🟠 git init



🟠 git status


Note que o nome do arquivo apareceu em vermelho.


🟠 git add .


O ponto significa tudo. Caso precise de apenas um arquivo, coloque: git add nomearquivo.extensãoarquivo


🟠 git status

Note que após adicionarmos o arquivo, ficou verde


🟠 git commit -m "Jogos commit"

Note que -m representa mensagem.


🟠 git config --global user.email "digite aqui o e-mail cadastrado na sua conta do github"

🟠 git config --global user.name "seu usuário github"


🟠 git remote add origin (cole o link do seu repositório).git

🟠 git push

O comando git push deve ser executado para sincronizar as mudanças do repositório local com o repositório remoto, ou seja, quando desejamos enviar os novos commits que realizamos em nosso repositório local para o repositório remoto. No entanto, para garantir uma conexão segura, é essencial configurar uma chave SSH no computador antes de executar esse comando.


🟠 git push --set-upstream origin master


Após os comandos acima, o arquivo cobrinha.py foi carregado:





Caso tenha dado erro um dos possíveis problemas poderá ser de versão ou até mesmo de configuração de Proxy. Se estiver em um ambiente organizacional, poderá existir algum bloqueio quanto a isso.


. Versão

digite o comando para identificar a versão e procure saber se na data atual, existe alguma versão mais recente e se sim, atualize.


git version




. Proxy


git config --global http.proxy http://seuproxy.com:porta
git config --global https.proxy https://seuproxy.com:porta


Download de pastas (repositórios) Github


Para baixar a pasta (repositório público), clique com o botão direito em qualquer pasta do seu computador, Git Bash ou abra o terminal do vscode e digite o comando:


🟤 git clone + endereço do repositório


git clone git@github.com:amandarnascimento/diversosPython


Navegue ate a pasta onde o repositório baixado foi salvo


ls para ver arquivos

pwd para identificar o local em que foi baixado



cd diversosPython





Acrescentar/commit em um repositório


Acrescentar arquivo em um repositório...

Se você já tiver a pasta do repositório no seu pc, abra a pasta no vs code, se não tiver, faça o procedimento acima utilizando o git clone.


Abra a pasta no vscode, abra o arquivo que você deseja subir para o github, abra o terminal do vs code


🟤 git add . (adicionando todos os arquivos da pasta. o ponto significa tudo)

🟤 git commit -m '1º Exercício em sala de aula, verificação de senha' (recomendo para cada vez que subir o código fazer um comentário informando o que foi alterado no código)

🟤 git push origin master (se o master nao der, tenta com o main (mais novos)


No site do github veja que o arquivo subiu para o repositório


Identificar histórico de commits


🔘 git log --oneline --graph --all



Identificar usuário logado git bash


Em computadores compartilhados, pode ser que já exista um usuário logado no Git e a pessoa esqueceu de deslogar.


🔵 git remote -v

Para ver o usuário



Deslogar git



(faça isso apenas se não estiver usando sua máquina pessoal)


🔵 git remote remove origin

🔵 git config --global --unset-all

🔵 git remote add

🔵 git remote add origin https://coleaqui o endereço




No painel de controle para DESLOGAR DE UMA CONTA:


>git credential-cache exit

>eval "$(ssh-agent -s)"

>ssh-agent -k

 




Inserir credencial github no windows



Suporte com mais detalhes:


No painel de controle do windows:

Gerenciador de Credenciais e Credenciais do Windows




...e se não for o seu usuário logado, precisa deslogar, remover credenciais do github




Criar chave SSH windows



Ao vincular um repositório remoto ao nosso repositório local, precisamos utilizar algum protocolo seguro, como HTTPS ou SSH. No caso de se utilizar o protocolo SSH devemos gerar uma chave SSH em nosso computador, além de cadastrá-la em nossa conta do GitHub. Isso é necessário para garantir a autenticação, pois o GitHub checa se quem está realizando o push dos commits tem permissão para realizar tal ação.


A chave SSH no GitHub é um método de autenticação seguro que permite que você interaja com seus repositórios no GitHub sem precisar inserir seu nome de usuário e senha toda vez. Em vez disso, uma chave criptográfica é usada para estabelecer uma conexão segura.


Primeiro passo é ir na pasta do seu usuário e procurar pela pasta oculta .ssh, se esta fazendo isso pela primeira vez, o arquivo não estará lá e precisaremos criar.


Abra o git bash ou o terminal do vscode e digite:


ssh-keygen -t ed25519 -C "seuemail@email.com"




Após inserir o e-mail, pressione enter para confirmar a chave criada no diretório informado (é possível alterá-lo), enter + 2x


Copie a sua chave pública e no github, logado, vá em configurações, chaves SSH e GPC, Nova chave SSH




Inserir mais de uma conta no git


Você deverá configurar cada repositório com usuário/email específico:


git config user.name "seu nome"

git config user.email "seu email"


Repare que os comandos foram sem o parâmetro --global, pois essa configuração deve ser aplicada apenas para o repositório em específico. A parte chata é que você terá que lembrar de executar esse comando para cada novo repositório que for configurar no computador.



Listar conteúdo(arquivos) de uma pasta


⚪ ls

Listar todo o conteúdo da pasta



⚪ ls -la

Listar todos os arquivos





Identificar histórico de alterações


⚪ git reflog


Quando o código for alterado, podemos ver o histórico


Pegue o código do commit e utilize no comando

⚪ git reset --hard codigo




Branch




git branch

para verificar quais estão disponíveis

git branch NomeBranch

para realizar a criação de uma nova Branch

git checkout NomeBrach

para trabalhar na nova branch

Modifique o seu código e faça umc ommit e push


Durante o push rode o comando sugerido pelo git git push --set-upstream origin


Para enviar o código para o projeto principal:


* Entre na branch principal e faça um git pull para puxar as atualizações atuais

* Utilize o comando git merge NomeBranch git push




⚫ git branch -r

Listar branchs




Conceitos de comandos git




git init: Inicia um novo repositório Git na pasta atual. Ele cria um diretório oculto chamado ".git" que contém toda a estrutura necessária para controlar as versões dos arquivos.

Ou seja, git init converte um diretório existente no computador, que geralmente é o diretório de algum projeto, em um repositório Git.

Se um diretório já for um repositório Git, não faz sentido rodar novamente o comando git init. Esse é um erro bastante comum de ser cometido.

Na dúvida, antes de executar o comando git init, execute primeiramente o comando git status. Se aparecer a mensagem fatal: not a git repository (or any of the parent directories): .git, isso significa que o diretório atual não é um repositório Git e você pode então executar o comando git init.


git status: Exibe o estado atual do repositório, mostrando quais arquivos foram modificados, adicionados ou excluídos desde o último commit. Ele também mostra quais arquivos estão no staging area (prontos para serem commitados) e quais não estão sendo rastreados.


git add .: Adiciona todas as alterações nos arquivos (não incluindo os que estão sendo ignorados) ao staging area. Isso prepara os arquivos para serem incluídos no próximo commit.


git commit -m 'texto': Realiza um commit (ou seja, uma gravação permanente) das alterações que estão no staging area. A opção -m permite adicionar uma mensagem descritiva ao commit para explicar as mudanças feitas.


git remote add origin link-repo: Adiciona um repositório remoto com o nome "origin" e o link para o repositório. É usado para conectar o repositório local a um repositório remoto.


git push: Envia as alterações locais (commits) para o repositório remoto associado ao branch atual. Isso sincroniza o repositório local com o remoto.


git reflog: Mostra o histórico de referências do Git, incluindo informações sobre commits e alterações de branches, mesmo se alguns commits estiverem fora do branch atual.


git reset --hard codigo: Reseta o repositório para um estado específico, desfazendo commits e alterações no working directory. O "código" pode ser o hash do commit ou um nome de branch.


git branch: Lista todos os branches presentes no repositório e destaca o branch atual com um asterisco.


git branch NomeBranch: Cria um novo branch com o nome "NomeBranch" a partir do commit atual.


git checkout NomeBranch: Altera o branch atual para o "NomeBranch", permitindo que você trabalhe nos arquivos desse branch.


git pull: Recupera e incorpora as alterações do repositório remoto para o branch atual do repositório local.


git merge NomeBranch: Combina o branch "NomeBranch" com o branch atual. Isso incorpora as alterações do branch especificado no branch atual.




Hospedagem de site utilizando GitHub


Para hospedar seu site utilizando o GitHub gratuito, clique aqui


Hospedar um site significa torná-lo acessível na internet. Quando você hospeda um site, você o coloca em um servidor web que está conectado à internet, permitindo que outras pessoas acessem e visualizem o conteúdo do seu site. Isso geralmente envolve o armazenamento dos arquivos do site, como HTML e CSS.



Veja como exemplo este projeto Decodificador de texto que ficou show de bola!





Padrões de commits


Padrões de commits:




Configurando variáveis de ambiente do windows


Acabou de instalar o git e abriu um novo terminal do vscode, digitou git init mas esta aparecendo uma mensagem em vermelho: "git : O termo 'git' não é reconhecido com nome de cmdlet..."





© 2017-2025  Criado e desenvolvido por Amanda Nascimento

  • Discord
  • GitHub
  • youtube
  • LinkedIn Amanda
bottom of page