versão distribuído e um sistema de gerenciamento de código fonte. ‣ Cada diretório de trabalho do Git é um repositório com um histórico completo e habilidade total de acompanhamento das revisões, não dependente de acesso a uma rede ou a um servidor central. ‣ O Git é um software livre, distribuído sob os termos da versão 2 da GNU General Public License. ‣ https://git-scm.com/downloads
sistema de cores do terminal para git friendly $ git config --system color.ui true # configura o nome de usuario para commit $ git config --global user.name “Nome Sobrenome” # configura o e-mail de usuario para commit $ git config --global user.email “[email protected]”
commit. ‣ unstaged: Arquivos com alterações que ainda não estão prontos para o commit. ‣ untracked: Arquivos que ainda não estão sendo rastreados pelo Git. Geralmente é um arquivo novo. ‣ deleted: Arquivos deletados que estão esperando para ser removidos do Git.
git add -A . ou git add * . ‣ git reset: Você pode usar o comando git reset <arquivo> para remover um ou mais arquivos da staging area. ‣ Staging Area: Um lugar onde agrupamos arquivos para podermos fazer o "commit" deles para o Git.
para tirar um retrato do seu repositório. Assim, se você ou outra pessoa precisar ver as mudanças feitas no repositório, existe uma timeline mostrando todas as alterações. $ git commit -m “Mensagem explicando as mudanças"
para gravar as alterações que foram “committadas” até então, e na ordem em que os commit’s foram feitos. $ git commit -m “Mensagem explicando as mudanças"
mais informações sobre cada commit feito. Você pode ver quando arquivos foram adicionados pela primeira vez ou quando foram deletados. É uma visão geral de tudo o que aconteceu durante o projeto.
para vincular um repositório remoto (GitHub, GitLab ou BitBucket) ao seu repositório local. O parâmetro origin se refere ao nome do nosso repo remote. $ git remote add origin https://github.com/<username>/<repositorio>.git
para gravar o seu repositório local e todo o seu histórico em seu repositório remoto. O origin, é nosso remote, enquanto master é a branch padrão. O parâmetro -u faz com que o git se lembre dos parâmetros origin e master, assim só é necessário fazer um git push na próxima vez. $ git push -u origin master
para puxar de volta o seu repositório remoto e todo o seu histórico para seu repositório local caso outra pessoa tenha feito alterações. O origin é o nosso remote, enquanto master é a branch da qual você está puxando as mudanças. $ git pull origin master
quando você precisa dar um pull, mas existem alterações suas as quais você ainda não pode (ou quer) fazer um commit. Você então deve fazer um stash das suas alterações, puxar as alterações do seu remoto e reaplicar as suas alterações presentes no stash. $ git stash $ git pull origin master $ git stash apply
quando você precisa saber quais as diferenças desse pull para o seu último commit. HEAD é o parâmetro usado para apontar a sua posição atual na timeline de commit’s. $ git diff HEAD
USAR 'GIT DIFF' OFERECE UMA BOA VISÃO GERAL DAS MUDANÇAS QUE VOCÊ FEZ E PERMITE ADICIONAR ARQUIVOS OU DIRETÓRIOS UM A CADA VEZ E FAZER O COMMIT SEPARADAMENTE. Commit Etiquette COMMIT ETIQUETTE
para voltar arquivos à como eles eram antes do último commit. O parâmetro !-- é usado para garantir que não virá mais parâmetros além do arquivo, assim, caso você tenha uma branch com o mesmo nome do arquivo, apenas o arquivo será afetado, e você não trocará de branch. $ git checkout -- <arquivo>
seu código onde você pode implementar uma feature ou corrigir um bug, fazendo commits separados apenas para essa branch. Isso é muito utilizado para evitar quebrar o código em perfeito funcionamento. Assim, você pode fazer um merge das branches apenas quando acabar a implementação. # usado para criar a branch $ git branch <nome-da-branch> # usado para trocar de branch $ git checkout <nome-da-branch>
para se remover arquivos do seu repositório. O legal do comando rm, é que além de deletar os arquivos em disco, ele automaticamente coloca as remoções na staging area, prontas para serem commitadas. $ git rm <arquivo>
para combinar duas branches existentes, ou combinar mudanças distintas no mesmo arquivo. # você deve voltar para a branch master $ git checkout master # usado para juntar as branches $ git merge <nome-da-outra-branch>
com o seu código fonte disponibilizado e licenciado com uma licença de código aberto no qual o direito autoral fornece o direito de estudar, modificar e distribuir o software de graça para qualquer um e para qualquer finalidade. OSS muitas vezes tem desenvolvido público, de maneira colaborativa. E é o exemplo mais proeminente de desenvolvimento de conteúdo gerado pelo usuário.
que um licenciante concede ao licenciado. As licenças de código aberto concedem o direito de copiar, modificar e redistribuir o código fonte (ou conteúdo). Essas licenças podem ainda impor obrigações como, modificações no código que são distribuídos devem ser disponibilizados em forma de código fonte, uma atribuição autor deve ser colocado em um programa/documentação com o código aberto. Exemplos de licença de software livre incluem licença Apache, licença BSD, GNU General Public License, GNU Lesser General Public License, licença MIT, Eclipse Public License e licença pública Mozilla.
https://www.digitalocean.com/community/ tutorial_series/an-introduction-to-open- source ‣ OSS Licences: https://choosealicense.com/ ‣ Como escolher a licença para o seu software: https://www.cio.com/article/2382115/open- source-tools/how-to-choose-the-best- license-for-your-open-source-software- project.html
https:// opensource.guide/how-to-contribute/ ‣ Contribuindo para o meu primeiro OSS: https:// hackernoon.com/contributing-to-my-first-open- source-project-3e432c5e8caa ‣ Porque Contribuir para OSS é legal: https:// code.likeagirl.io/git-out-and-contribute-c01fa643e2e1 ‣ Google Summer of Code: https:// developers.google.com/open-source/gsoc/ ‣ Contribuindo para OSS mesmo sendo iniciante: https:// woliveiras.com.br/posts/contribuindo-para-projetos- open-source-no-github-mesmo-sendo-iniciante/
à comunidade internacional. ‣ Pull requests podem ser feitos em qualquer repositório do GitHub. ‣ Inscrições podem ser feitas em qualquer dia entre 1º e 31 de Outubro. ‣ https://hacktoberfest.digitalocean.com/
4 pull requests (PRs) entre 1º e 31 de Outubro em qualquer fuso horário. Os PRs podem ser feitos em qualquer repositório público no GitHub. Quaisquer PRs marcado pelos donos de repositórios como spam, ou PRs automatizados serão contados como inválidos, e não contarão para a aquisição da camisa.
hacktoberfest do AliceWonderland ‣ pucminasGitSwift do marcorcb ‣ Projetos Brasileiros para contribuir: https:// medium.com/nossa-coletividad/projetos- brasileiros-para-fazer-pull-requests-nesse- hacktoberfest-4dc9b9b576c0 ‣ Lista de Projetos OSS Beginner Frindly: https:// github.com/MunGell/awesome-for-beginners