Git: Usando o Git e o GitHub: Difference between revisions

From Wiki
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Instalando o Git =
Vamos instalar o cliente Git
1. Abra um terminal
2. Instale o Nginx
'''Fedora.'''
$ sudo dnf -y install git
= Criando a sua conta no GitHub =  
= Criando a sua conta no GitHub =  


Acesse o site [http://www.github.com www.github.com] e faça o seu cadastro.
Acesse o site [http://www.github.com www.github.com] e faça o seu cadastro.


Após criar a conta, clique no botão '''+New Repository''' para adicionar repositório. Exemplo: PrimeiroRep
Após criar a conta, clique no botão '''+New Repository''' para adicionar repositório.  
 
Exemplo: PrimeiroRepo


= Usando o GitHub =
= Usando o GitHub =


== Configurando Local ==
== Configurando o usuário, senha, email localmente ==


Abra um janela de shell e vamos definir os valores padrões.
Abra um janela de shell e vamos definir os valores padrões.
Line 35: Line 26:
  mkdir ~/workspace
  mkdir ~/workspace


Vamos clonar o PrimeiroRep
Vamos clonar o PrimeiroRepo


  git '''clone''' https://github.com/<COLOQUE_O_SEU_USERNAME>/PrimeiroRep.git
  git '''clone''' <nowiki>https://github.com/<COLOQUE_O_SEU_USERNAME>/PrimeiroRepo.git</nowiki>


== Alterando localmente e enviando para o repositório remoto ==
== Alterando localmente e enviando para o repositório remoto ==
Line 43: Line 34:
Vamos alterar um pouco :)  
Vamos alterar um pouco :)  


  cd PrimeiroRep
  cd PrimeiroRepo
   
   
  mkdir Pasta01
  mkdir Pasta01
Line 50: Line 41:
Agora vamos adicionar ao INDEX
Agora vamos adicionar ao INDEX


  git '''add''' *
  git '''add''' .


Fazendo o commit
Fazendo o commit
Line 60: Line 51:
  git '''push'''
  git '''push'''


Vamos conferir
Verifique no GitHub a nova pasta e arquivo criado
 
git '''status'''


== Trazendo uma alteração remota  ==
== Trazendo uma alteração remota  ==
Line 72: Line 61:
  git '''pull'''
  git '''pull'''


= Principais comandos úteis =


{| class="wikitable"
== Navegando entre as versões  ==
|-
! Comando !! Descrição !! Exemplo
|-
|
git '''init'''
||
Inicia um novo repositório Git. Até que você executar este comando dentro de um repositório ou diretório, é apenas uma pasta regular. Só depois de introduzir este não aceita mais comandos do Git.
||
Example


|-
'''Importante: Navegar entre versões depende de como a organização trabalha com o Git.'''
|
git '''config'''  
||
Abreviação de "configure", este é mais útil quando você estiver configurando Git pela primeira vez.
||
Example


|-
Vamos listar as versões
|
git '''help'''
||
Esqueceu a um comando? Digite isso na linha de comando para trazer os 21 comandos mais comuns git. Você também pode ser mais específico e digitar "git help init" ou outro termo para descobrir como usar e configurar um comando específico git.
||
Example


|-
git '''reflog'''
|
git '''status'''  
||
Verifique o status do seu repositório. Ver quais arquivos estão dentro dele, que ainda mudanças precisam ser cometido, e que ramo do repositório que você está trabalhando no momento.
||
Example


|-
o resultado
|
git '''add'''
||
Isso não adiciona novos arquivos para seu repositório. Em vez disso, ele traz novos arquivos a atenção do Git. Depois de adicionar os arquivos, eles estão incluídos no "snapshots" do repositório Git.
||
Example


|-
84af342 (HEAD -> master, origin/master) HEAD@{0} commit: segundo commmit
|
12de321 (HEAD@{1}: commit (initial): commit inicial)
git '''commit'''
||
comando mais importante do Git. Depois de fazer qualquer tipo de mudança, você introduzir esta a fim de ter um "instantâneo" do repositório. Normalmente ele vai git commit -m "mensagem aqui." O -m indica que a secção seguinte do comando deve ser lido como uma mensagem.
||
Example


|-
a versão atual é a 84af34, podemos voltar para a versão anterior usando o seguinte comando:
|
git '''branch'''
||
Trabalhar com vários colaboradores e quiser fazer alterações em seu próprio país? Este comando irá permitir que você crie um novo ramo, ou cronograma de commits, de mudanças e adições de arquivos que são completamente sua. Seu título vai após o comando. Se você queria um novo ramo chamado "cats", você deverá digitar git branch cats
||
Example


git '''reset''' --hard 12de321


|-
Se você executar o reflog verá que o resultado será
| git '''log''' || Lista as atividades entre local e o repositório remoto || Example
|-
|
git '''checkout''' <nome_da_branch>
||
permite Literalmente você "check out" um repositório que você não está atualmente dentro. Este é um comando de navegação que lhe permite mover-se para o repositório que deseja verificar. Você pode usar este comando como mestre git checkout para olhar para o branch master, ou gatos git checkout para olhar para outro ramo.
||
-


|-
o resultado
|
git '''merge''' <nome_da_branch>
||
Quando você terminar de trabalhar em um ramo, você pode mesclar as alterações de volta para o branch master, que é visível a todos os colaboradores. git merge gatos tomaria todas as alterações feitas ao "gatos" ramo e adicioná-los para o mestre.
||
-
|-
|
git '''push'''
||
Se você estiver trabalhando em seu computador local, e quer que seus compromete-se a ser visível on-line no GitHub, bem como, você "empurrar" as mudanças até GitHub com este comando.
||
-


|-
12de321 (HEAD -> master) HEAD@{0}: reset: moving to 12de321
|
84af342 (origin/master) HEAD@{1}: commit: segundo commmit
git '''pull'''
12de321 (HEAD -> master) HEAD@{02}: commit (initial): commit inicial)
||
Se você estiver trabalhando em seu computador local e quer a versão mais up-to-date do seu repositório para trabalhar com, você "puxar" as mudanças para baixo do GitHub com este comando.
||
-


|}


== Trabalhando com Branches  ==


Inicia um novo repositório Git. Até que você executar este comando dentro de um repositório ou diretório, é apenas uma pasta regular. Só depois de introduzir este não aceita mais comandos do Git.
Branches são ramificações das versões de código. Elas permitem que indivíduos trabalhem de forma concorrente no código fonte do programa.


= Ver também =
Após a alteração em cada Branch, realizamos um merge para que tenhamos um código principal unificado e estável.
 
Verificando a sua branch atual
 
git '''branch'''
 
Pegue o código principal
 
git '''pull'''
 
Criando a branch staging e alternando pra essa brach
 
git '''branch''' staging
git '''checkout''' staging
 
Alterando o código
 
echo "Trabalhando com Branches!!!" > arquivo02.txt
 
Subindo o código
 
git '''add''' .
git '''commit''' -m "Adicionado arquivo arquivo02.txt"
git '''push''' -u origin staging
 
Verifique no GitHub a branch staging, verifique também na branch master e veja a diferença
 
Realizando o merge da branch staging para o branch main. Para isso alternamos a branch, puxamos a atualização do servidor, fazemos o merge da staging com a master, depois subimos pro Github
 
git '''checkout''' master
git '''pull'''
git '''merge''' staging
git '''push'''
 
 
O que é Pull Requests? é quando alguém deve aprovar a sua alteração. Você pode subir também diretamente para a sua branch, e no Github você solicita que as suas alterações sejam aprovadas. Depois de aprovada as suas alterações foram parte da branch master.
 
= Sugestões de nomes para branches =
 
Sugestões para nomes de ramificações


* [[NodeJs: Instalando o NodeJs no Linux]]
* Production -> master/
* [[MongoDB: Instalando o MongoDB no Linux]]
* Development -> develop/
* [[Nginx: Instalando o Nginx no Linux]]
* Feature branch prefix -> feature/
* Release branch prefix -> release/
* Hotfix branch prefix -> hotfix/


= Ver também =


*[[Linux|  Mais Artigos sobre Linux / UNIX / AIX]]
* [[DevOps]]
*[[Tecnologias|  Mais Artigos sobre Cloud / WebDev / Tecnologias]]


[[Category:Git]]
[[Category:DevOps]]
[[Category:Linux]]
[[Category:Linux]]
[[Category:Cloud]]
[[Category:Cloud]]
[[Category:WebDev]]
[[Category:WebDev]]
[[Category:Tecnologias]]
[[Category:Tecnologias]]
[[Category:Fedora]]

Latest revision as of 14:20, 30 January 2024

Criando a sua conta no GitHub

Acesse o site www.github.com e faça o seu cadastro.

Após criar a conta, clique no botão +New Repository para adicionar repositório.

Exemplo: PrimeiroRepo

Usando o GitHub

Configurando o usuário, senha, email localmente

Abra um janela de shell e vamos definir os valores padrões.

git config --global user.name "<COLOQUE_O_SEU_NOME_AQUI>"
git config --global user.email "<COLOQUE_O_SEU_EMAIL_AQUI>"

Você consegue verificar se ok, executando o comando:

cat ~/.gitconfig

Iniciando o primeiro repositório

Vamos criar o nosso repositório local

mkdir ~/workspace

Vamos clonar o PrimeiroRepo

git clone https://github.com/<COLOQUE_O_SEU_USERNAME>/PrimeiroRepo.git

Alterando localmente e enviando para o repositório remoto

Vamos alterar um pouco :)

cd PrimeiroRepo

mkdir Pasta01
echo "Achei legal!!!" > arquivo01.txt

Agora vamos adicionar ao INDEX

git add .

Fazendo o commit

git commit -m "Adicionado pasta Pasta01 e um arquivo arquivo01.txt"

Subindo para o repositório remoto

git push

Verifique no GitHub a nova pasta e arquivo criado

Trazendo uma alteração remota

Vá no site do Github e altere o arquivo README.MD.

Traga as alterações utilizando o comando

git pull


Navegando entre as versões

Importante: Navegar entre versões depende de como a organização trabalha com o Git.

Vamos listar as versões

git reflog

o resultado

84af342 (HEAD -> master, origin/master) HEAD@{0} commit: segundo commmit
12de321 (HEAD@{1}: commit (initial): commit inicial)

a versão atual é a 84af34, podemos voltar para a versão anterior usando o seguinte comando:

git reset --hard 12de321

Se você executar o reflog verá que o resultado será

o resultado

12de321 (HEAD -> master) HEAD@{0}: reset: moving to 12de321
84af342 (origin/master) HEAD@{1}: commit: segundo commmit
12de321 (HEAD -> master) HEAD@{02}: commit (initial): commit inicial)


Trabalhando com Branches

Branches são ramificações das versões de código. Elas permitem que indivíduos trabalhem de forma concorrente no código fonte do programa.

Após a alteração em cada Branch, realizamos um merge para que tenhamos um código principal unificado e estável.

Verificando a sua branch atual

git branch

Pegue o código principal

git pull

Criando a branch staging e alternando pra essa brach

git branch staging
git checkout staging

Alterando o código

echo "Trabalhando com Branches!!!" > arquivo02.txt

Subindo o código

git add .
git commit -m "Adicionado arquivo arquivo02.txt"
git push -u origin staging

Verifique no GitHub a branch staging, verifique também na branch master e veja a diferença

Realizando o merge da branch staging para o branch main. Para isso alternamos a branch, puxamos a atualização do servidor, fazemos o merge da staging com a master, depois subimos pro Github

git checkout master
git pull
git merge staging
git push


O que é Pull Requests? é quando alguém deve aprovar a sua alteração. Você pode subir também diretamente para a sua branch, e no Github você solicita que as suas alterações sejam aprovadas. Depois de aprovada as suas alterações foram parte da branch master.

Sugestões de nomes para branches

Sugestões para nomes de ramificações

  • Production -> master/
  • Development -> develop/
  • Feature branch prefix -> feature/
  • Release branch prefix -> release/
  • Hotfix branch prefix -> hotfix/

Ver também