#Git
#Git – Soluções WEB

Git é um sistema de controle de versão distribuído open-source, projetado para rastrear alterações em arquivos e facilitar a colaboração em projetos de software. Ele permite que múltiplos desenvolvedores trabalhem no mesmo projeto simultaneamente, mantendo o histórico de mudanças e possibilitando a reversão de qualquer versão. Git é amplamente utilizado em equipes de desenvolvimento para garantir a integridade do código e facilitar o trabalho colaborativo.

Benefícios:
  • Controle de versão distribuído: Permite que múltiplos desenvolvedores trabalhem simultaneamente sem conflitos.
  • Histórico completo: Rastreamento de todas as alterações no código, com possibilidade de reverter qualquer versão.
  • Integração com plataformas de hospedagem de código, como GitHub, GitLab e Bitbucket.
  • Colaboração eficiente: Facilidade para gerenciar ramificações (branches) e fusões (merges) de código.
  • Desempenho: Git é altamente eficiente, mesmo em grandes projetos, devido ao seu modelo distribuído.
  • Flexibilidade: Suporta diferentes fluxos de trabalho e padrões de desenvolvimento, como Git Flow e trunk-based development.
Ciclo de vida:
  • Inicialização: Criar um repositório local com git init ou clonar um repositório existente com git clone.
  • Fazer alterações: Modificar arquivos e rastrear essas alterações com git add e git commit.
  • Sincronização: Sincronizar o repositório local com o repositório remoto utilizando git push e git pull.
  • Criação de ramificações: Gerenciar desenvolvimento paralelo criando branches com git branch e git checkout.
  • Fusão de código: Integrar alterações entre branches com git merge ou git rebase.
  • Reversão: Reverter alterações com git reset ou git revert em caso de problemas no código.
Arquitetura:
  • Repositórios locais: Cada desenvolvedor possui uma cópia completa do histórico do repositório, permitindo trabalho offline.
  • Branches: Ramificações independentes do código, permitindo que diferentes funcionalidades sejam desenvolvidas em paralelo.
  • Commits: Instantâneos das alterações feitas no código, com mensagens descritivas para acompanhamento.
  • Remotes: Repositórios remotos, como GitHub ou GitLab, que armazenam o código de forma centralizada para colaboração.
  • Staging Area: Área intermediária onde as mudanças são preparadas antes de serem confirmadas (committed) ao repositório.
Recursos:
  • Controle de versão distribuído: Cada cópia do repositório contém o histórico completo do projeto.
  • Branches e Merges: Fácil gerenciamento de ramificações e fusões para desenvolvimento paralelo.
  • Tags: Permite marcar commits específicos como versões de lançamento.
  • Histórico de commits: Rastreamento completo de quem fez alterações, quando e por quê, utilizando o comando git log.
  • Integração contínua: Utilizado amplamente em pipelines de CI/CD com plataformas como Jenkins, GitLab CI, e GitHub Actions.
  • Reversão de código: Permite desfazer mudanças facilmente com comandos como git revert ou git reset.
News
Fluxo de trabalho comandos Git

 

Lista de comandos Git*

git diff

Mostra as diferenças de arquivos que ainda não foram adicionadas à área de stage.

git commit -a -m “mensagem do commit”

Faz o commit de todas as mudanças rastreadas com uma mensagem.

git commit –amend

Modifica o último commit.

git status

Mostra o estado atual do diretório de trabalho.

git add caminho_do_arquivo

Adiciona arquivo(s) à área de stage.

git checkout -b nome_da_branch

Cria e alterna para um novo branch.

git checkout nome_da_branch

Alterna para um branch existente.

git checkout

Altera o diretório de trabalho para um commit específico.

git push origin nome_da_branch

Faz o push de um branch para o repositório remoto.

git pull

Busca e mescla as mudanças do repositório remoto.

git fetch

Busca mudanças do repositório remoto sem mesclá-las.

git rebase -i

Rebase interativo, permite reescrever o histórico de commits.

git rebase nome_da_branch

Rebase do branch atual em outro branch.

git clone

Cria uma cópia local de um repositório remoto.

git merge

Mescla branches juntos.

git log –stat

Mostra o log de commits com estatísticas.

git stash

Armazena mudanças temporariamente para aplicação posterior.

git stash pop

Aplica e remove as mudanças armazenadas no stash.

git show commit_id

Mostra detalhes sobre um commit específico.

git reset HEAD~1

Desfaz o último commit, preservando as mudanças localmente.

git branch -D nome_da_branch

Deleta um branch forçadamente.

git reset

Desfaz commits movendo a referência do branch.

git revert commit_id

Cria um novo commit que desfaz as mudanças de um commit específico.

git cherry-pick commit_id

Aplica mudanças de um commit específico.

git branch

Lista branches.

git reset –soft HEAD^

Desfaz o último commit, mas mantém as mudanças.

git reset –hard

Reseta tudo para um commit anterior, apagando todas as mudanças não commitadas.

git branch –set-upstream-to remoto_branch

Define o branch upstream para o branch remoto especificado.

Abrir postagem "Roadmap To Learn DevOps"
Rolf Rostock
@admin_inrbybx8 11 de setembro de 2024
Roadmap To Learn DevOps

O Roadmap para aprender DevOps abrange as principais tecnologias e ferramentas para formar um profissional completo na área. Começa com os Pré-requisitos de DevOps, seguido pelo estudo de Networking e o domínio do Linux e Shell Scripting para automatizar tarefas. O controle de versão é feito com Git & GitHub, e o conhecimento de Bancos de Dados também é necessário. Ferramentas como Docker facilitam a containerização, enquanto Jenkins é usado para integração contínua. AWS, Azure ou GCP são abordados na gestão de nuvem. Além disso, o roadmap inclui Kubernetes para orquestração de containers, Helm, Terraform, e o monitoramento com Prometheus & Grafana.

[lista_pages_per_id include_page_id=”11051,10219,10940,10926,10981,11054,10975,10963,10966,11236,10209,11275,11281,11304,11310,11314,11337,11340,11346,11351,11356,11361,11369,11325,10985″ pages_per_page=”50″]

Fluxo de trabalho comandos Git

 

Lista de comandos Git*

git diff

Mostra as diferenças de arquivos que ainda não foram adicionadas à área de stage.

git commit -a -m “mensagem do commit”

Faz o commit de todas as mudanças rastreadas com uma mensagem.

git commit –amend

Modifica o último commit.

git status

Mostra o estado atual do diretório de trabalho.

git add caminho_do_arquivo

Adiciona arquivo(s) à área de stage.

git checkout -b nome_da_branch

Cria e alterna para um novo branch.

git checkout nome_da_branch

Alterna para um branch existente.

git checkout

Altera o diretório de trabalho para um commit específico.

git push origin nome_da_branch

Faz o push de um branch para o repositório remoto.

git pull

Busca e mescla as mudanças do repositório remoto.

git fetch

Busca mudanças do repositório remoto sem mesclá-las.

git rebase -i

Rebase interativo, permite reescrever o histórico de commits.

git rebase nome_da_branch

Rebase do branch atual em outro branch.

git clone

Cria uma cópia local de um repositório remoto.

git merge

Mescla branches juntos.

git log –stat

Mostra o log de commits com estatísticas.

git stash

Armazena mudanças temporariamente para aplicação posterior.

git stash pop

Aplica e remove as mudanças armazenadas no stash.

git show commit_id

Mostra detalhes sobre um commit específico.

git reset HEAD~1

Desfaz o último commit, preservando as mudanças localmente.

git branch -D nome_da_branch

Deleta um branch forçadamente.

git reset

Desfaz commits movendo a referência do branch.

git revert commit_id

Cria um novo commit que desfaz as mudanças de um commit específico.

git cherry-pick commit_id

Aplica mudanças de um commit específico.

git branch

Lista branches.

git reset –soft HEAD^

Desfaz o último commit, mas mantém as mudanças.

git reset –hard

Reseta tudo para um commit anterior, apagando todas as mudanças não commitadas.

git branch –set-upstream-to remoto_branch

Define o branch upstream para o branch remoto especificado.

Abrir postagem "Roadmap To Learn DevOps"
Rolf Rostock
@admin_inrbybx8 11 de setembro de 2024
Roadmap To Learn DevOps

O Roadmap para aprender DevOps abrange as principais tecnologias e ferramentas para formar um profissional completo na área. Começa com os Pré-requisitos de DevOps, seguido pelo estudo de Networking e o domínio do Linux e Shell Scripting para automatizar tarefas. O controle de versão é feito com Git & GitHub, e o conhecimento de Bancos de Dados também é necessário. Ferramentas como Docker facilitam a containerização, enquanto Jenkins é usado para integração contínua. AWS, Azure ou GCP são abordados na gestão de nuvem. Além disso, o roadmap inclui Kubernetes para orquestração de containers, Helm, Terraform, e o monitoramento com Prometheus & Grafana.

[lista_pages_per_id include_page_id=”11051,10219,10940,10926,10981,11054,10975,10963,10966,11236,10209,11275,11281,11304,11310,11314,11337,11340,11346,11351,11356,11361,11369,11325,10985″ pages_per_page=”50″]