Escolar Documentos
Profissional Documentos
Cultura Documentos
gitk [grafica]
ls -la
ls [lista todos os arquivos]
cd pasta
cd ..
git status
git add arquivo
git add . [adiciona todos os arquivos]
git reset HEAD . [da untaged parece]
git clone (url) [clona todo o repositorio do github]
ou
git clone (url) (nome da pasta a ser criada)
git reset HEAD (arquivo) [para desadicinar os arquivos]
clear [limpa tela]
git reset HEAD . [tira todos ultimos modificados e recem staged]
git checkout -b nomebranch [cria uma branch] [acho que esse n copia
VERIFICAR
� para criar branch e j� dar checkout em seguida]
git checkout (nome da branch) [pega ultima atualiza�ao da branch]
git branch [mostra todas as branches q vc tem]
git diff [para ver a diferen�a de nos arquivos modifficados nao
comitados e o ultimo comitado]
ex
git checkout (branch1)
git merge (branch2)
git status
git log
git push origin master
2 volta para 1
brach_teste-> master
git fetch
[ele atualiza caso a do servidor github est� a frente da local]
depois vc d� um
git status [para ver a situa��o]
depois vc d� um
git pull [para atualizar a branch local, sincronizar]
git pull [traz as ultimas alteera�oes feitas mas s� se for em
arquivos diferentes senao da treta]
se vc apaga uma branch vc perde ela a nao ser quer vc tenha dado merge da�
d� para recuperar
git pull [parece que vera se faz um pull request em um outra branch
mas para ele linkar essa branch local com a do gitb=hub vc
tem que usar
git push origin testeBranch -u]
Resolvendo conflitos
ex dois na master
mario comita
e depois luigi
OUtra questao
pegar criou uma branch e quis voltar para master
a� ele d� o merge
git merge nova-branch
OUTRA
ele modifica um arquivo e salva
e d� add
e vai dar unstage nele
dando
git reset HEAD <file> [HEAD quer dzer que estamos nele no momento]
git reset head a.txt
OUTRA
se vc quer que o git deixe de rastrear um arquivo basta
git rm --cached a.txt[nome do arquivo]
d� um git status
e fala que foi deletado que a.txt � um arquivo nao rastreado
e partir de agora ele nao ira nos commmitas mas no que ele estavapermanece
ou usar com atalho -u para sempre que dar o git push ir para mesmo
repositorio
git push -u origin masterg
OUTRA
dizer que config esse nivel do systema vai afetar
se for para todo mundo que usa o pc -- system
se � para nos e todo mundo do git --global
se for apenas para esse projeto usa -se --local
ele usa global para que todo mundo receba essas informa��es
git config --global core.editor notepad [qual editor de texto ser� usado pelo
git]
Arquivo gitignorre
vc escolhe ao criar o repositorio
e tem varios padroes a serem ignorados
e tem UNity tbm hahahaha
Qual comando voc� utilizou para conectar seu reposit�rio local com o github?
git remote add origin https://github.com/user/repo.git
Qual comando voc� utilizou para realizar seu primeiro envio de arquivos?
git push -u origin master
OUTRO EXEMPLO
quando se quer fazer um merge da branch para master e ninguem
deu commit na master at� da o merge quer dizer que vc
est� fazendo um Merge do TIPO
FAST-FORWARD
depois de fazer isso vc pode eliminar a branch e quando vc
eliminar a branch vai parecer que todos commits da branch seriam
da master e o projeto seguindo normalmente
EX:vc precisa estar na master pois a partir dela que vamos fazer
o merge
a� vc d� o codigo com o nome da branch q vc quer fazer jun�ao com
a master
git merge nova-branch
o git vai dar a msg de fast-foward ou seja a jun�ao foi feita automaticamente
como senao existisse nova-branch
e o os commit da nova-branch vai para master
COMANDOs
git log --graph [ajuda a entender o prosseguimento dos commits]
git log --graph --online[para mostrar de forma simplificada]
para escluir uma branch
git branch -d nova-branch
para fazer consulta das branch
git branch
e asteristo indica aonde estamos
BRANCHES
RECURSIVE STRATEGY / CONFLITS
esse � o merge s� que com commits novos na master
gera um commit do tipo MERGE e ele tem dois pais sendo
eles um de cada branch
quando nao � mexido nos mesmos arquivos o git usa a RECURSIVE STRATEGY
merge[significa jun�ao das branches]
OBS+++
quando vc d� git log e aparece ":" vc precisa dar enter para
aparecer tudo at� aparecer END e depois dar q para sair
ISSUES
GITHUB ISSUES
-Rastreio de Bugs
-Sugestao de ferramenta(Features)
OBS++
se vc estrar em outra branch sem ser a master e da o git push
nao funciona pq ela est'a configurada para mandar a master
para mandar outra branch para o github
git push origin nova-branch
LABELS EM ISSUES
vc vai issues->labs
que pode ser bus, duplicac�o etc,pedir ajuda
e vc pode criar at� uma nova labeldo seu jeito
a� vc entra na issue e do lado direito coloca a label
caso vc queira fazer algum filtro bastra entrar em issues
e clicar em setinha labels para fazer filtro de um tipo
ISSUES E MILESTONES
milestone � um agregador de issues
a gente pode pegar as issues e criar uma milestone para colocar uma data para
corrigir esses erros
a� vc entra em cada issue e vai no lado direito e colocque a milestone
e vai aparecer uma plaquinha nele
INTERESSANTE
quando vc ve q deu certo,ficou bom o servi�o para fechar uma issue
vc comenta dois pontos e escolhe um emooji
mesmo que vc tenha salvado um arquivo e vc nao deu staged tem como vc voltar
no comit anterior perdendo o que foi salvo
a� vc consegue retirar o arquivo
pela git checkout a.txt
ou seja mesmo que vc tenha salvo o arquivo vc poderia perder os dados
FORK
-copia de um repositorio
-experimentar altera�oes
vc nao tem acesso por isso pode baixar e fazer altera�oes
-mas vc pode sugerir sugestoes usando o fork
-colaborar com projetos(parte do processo)
resumindo
-git add remote upstream
-git pull upstream (master) [para atualizar]
-git push origin master
s� vc clicar em fork nos dos outros
e clonar depois para um local na sua maquina
REBASE -
outras op�oes
git rebase --skip
--abort
REBASE INTERATIVE
para mudar a mensagem de um commit
vc precisa ir no pai
git rebase -i (hash do pai)
NAO VI ISSO MTO BEM NAO � para ser usado mesmo
PULL REQUEST
-Enviar altera�oes para serem incorporadas
a um projeto
-discussoes sobre o codigo
-integrar c�digo revisado ao projeto
pelo fork
vc faz altera�oes do local que foi copiado da forque e
vc atualiza o seu fork fazendo um pull request a partir
dele
o legal disso e que assim q ele pe�a para vc fazer modificac�es
vc pode dar um push no fork que vai atualizar o pull request
REVISANDO O FLUXO
-fork
-git clone
-git checkout -b, git add, git commit
-git push
-Pull request
-git pull upstream, git push
REPETIR SE��O 7
SE��O 8----------------------------------------------
REVISANDO FLUXO
-git clone
-git checkout -b , git add, git commit
-git push
-Pull request
-git pull[para atualizar as branches]
Ex: ele tentou dar merge na local e consegiu mas quando da push para
upstream d� errado
PROCESSO DE REVIEW
aqui ele deu push da branch l� mas falou que precisava de review
e fez o pedido do pull request
aqundo � aprovada
tanto ele quanto outro pode fazer o merge
COM CONFLITOS
GIT STASH
-as vezes precisamos parar o que estamos fazendo
para resolver outra coisa como corrigir algum bug
e o comando
git stash apply traz os arquivos devolta
com o commando
git stash --keep-index
ele coloca na stash apenas os arquivos modificados
a� vai contunar os arquivos que estavam na stage
git stash
git pull
git stash pop
SUBCOMANDOS DO STASH
git stash -u
inclui at� os arquivos nao rastreados