Executando verificação de segurança...
3

[GIT] Conceitos Importantes - Aula 1

Git

O Git é uma ferramenta para controle de versões, o que significa que o Git serve não apenas para fazer backup dos seus códigos, mas também para guardar todas as versões do seu código, permitindo que você transite entre elas de maneira prática.

Github

O GitHub é onde você hospeda o seu código, enviando-o por meio do Git. Mas não é só isso, o GitHub também funciona como uma rede social de código, onde vários programadores podem visualizar o seu código e contribuir com ele (desde que você mantenha seu repositório público). Além disso, o GitHub é muito útil para analisar o código de outros desenvolvedores mais experientes, oferecendo a possibilidade de clonar esses repositórios (Fork) para que você possa testá-los e estudá-los na sua máquina.

KeyWords

Commit = Um commit é como um checkpoint, ele salva o seu código da maneira em que se encontra, permitindo que você possa retornar aquele estado, um commit geralmente vem com uma mensagem que resume as alterações realizadas.

Fork = Fork é basicamente uma cópia do projeto original, totalmente independente, ou seja, é uma cópia sua onde você pode alterar e testar tudo que quiser, sem se preocupar em bagunçar o código principal, é quase como um playground, geralmente é feita usando o comando Git clone.

Branch = O versionamento no Git segue uma única linha do tempo. Entretanto, para fins de segurança, precaução e testes, é possível criar uma ramificação dessa linha principal (Main). Essa nova linha do tempo paralela é chamada de Branch. Grandes projetos podem possuir diversas Branchs que após a conclusão podem ser fundidas à Main (Merge).

Merge = O merge serve para fundir uma Branch à Main. O Git faz a análise das alterações e verifica se há conflitos com o código da Main. Em caso de conflitos o Git gera uma mensagem informando o problema, caso não haja conflitos, o conteúdo da Branch é inserido na Main.

Pull Request (PR) = O PR é uma solicitação de contribuição para um projeto. Os códigos Open Source do Github, aceitam contribuições de terceiros, após feito o código da contribuição, é necessário enviar um PR, para que o autor do projeto possa analisar a sua contribuição, caso o seu PR seja aceito, é feito um Merge na Main do projeto, e o seu nome entra na lista de Contributors na página do Github do projeto.

.GitIgnore = O .gitignore é um arquivo no seu projeto que funciona como uma lista de arquivos ou pastas que devem ser ignorados no momento do envio para o Github. Todos os arquivos que estiverem nessa lista não serão incluídos no repositório. Ele recebe esse nome porque o arquivo deve ser nomeado como .gitignore, fazendo com que o Git o ignore automaticamente.

Tag = Uma Tag é uma referência a um commit específico no histórico, as Tags sao usadas para marcar pontos importantes.

Cherry-Pick = O Cherry-Pick serve para aplicar um commit específico de um Branch em outra Branch, diferentemente do Merge que aplica todos os commits, o Cherry-Pick te permite selecionar um commit específico.

Rebase = O Rebase aplica mudanças de uma Branch sobre outra (geralmente a Main). O Rebase transplanta os commits de uma Branch em outra, criando um histórico de commits mais limpo e linear, diferentemente do Merge que cria um Merge Commit para mesclar as alterações, o que pode poluir o histórico (Log).

Staging Area = Local onde ficam os arquivos que estão prontos para receber o Commit, todos os arquivos da Staging Area entrarão no próximo Commit.

Tip = Se refere ao último Commit de uma Branch.

Merge Commit = Um Merge Commit é um Commit gerado automaticamente após realizar um Merge de uma Branch na outra, esse Commit contém todas as alterações da Branch que está sendo mesclada.

Merge Base = O Merge Base é o Commit onde foi realizada a ramificação da Branch, também chamado de o melhor ancestral em comum, ou seja, o ponto de inflexão da Branch.

HEAD = é um ponteiro especial que sempre aponta para o Commit atual ou Branch atual no qual você está trabalhando.

Status

Untracked = Não encontrado pelo Git.

Staged = Marcado para ser incluído no próximo commit.

Committed = Salvo no histórico do repositório.

Cheque o Status do seu repositório com:

git status

Untracked vs Unstaged

Untracked: Arquivos que existem no diretório de trabalho, mas que não foram adicionados ao controle de versão pelo Git. Eles não estão incluídos nos Commits e não aparecem no histórico do Git até que sejam explicitamente adicionados.

Unstaged: Arquivos que já estão sendo rastreados pelo Git (já foram adicionados e Commitados pelo menos uma vez), mas que foram modificados após o último Commit e não foram adicionados à Staging Area para o próximo Commit.

Carregando publicação patrocinada...