Comandos Git

git

Olá, Devs!!! Primeiramente, bem-vindos ao nosso guia sobre os Comandos Git. Caso esteja buscando dominar o controle de versão e estar totalmente atualizado, saiba que está no lugar certo. De fato, o Git não é apenas uma ferramenta – representa uma revolução na forma como gerenciamos e colaboramos em projetos de código. Neste post, pretendo abordar os comandos essenciais do Git, com o objetivo de ajudar você a navegar com confiança neste universo.

Afinal, sei que você tem interesse em mergulhar no mundo do GitHub e do Git, não é mesmo? Bem, você está no lugar certo. De fato, o Git é uma das ferramentas de controle de versão mais populares e, por boas razões. Ademais, para enriquecer ainda mais a experiência, temos o GitHub, uma plataforma que não apenas permite hospedar, mas também colaborar e compartilhar nosso código-fonte com o mundo. Então, que tal começarmos do início?

1. Configurando tudo

Primeiramente, antes de fazermos qualquer coisa, precisamos nos apresentar para o Git. Mas por quê? Simplesmente porque, cada vez que fazemos uma alteração, o Git quer saber quem somos. Então, diga ao Git o seu nome usando:

git config –global user.name “Seu Nome”

Ah, e não se esqueça do seu e-mail. Afinal, ele é importante, principalmente se você planeja colaborar em projetos públicos. Use:

git config –global user.email “seu@email.com”

2. Dando os primeiros passos

Ok, agora que nos apresentamos, o que fazemos a seguir? Se você estiver começando um novo projeto, você vai querer inicializar um repositório Git. Isso é bem simples, basta usar:

git init

Por outro lado, se você encontrou um projeto interessante no GitHub e quer uma cópia dele para trabalhar localmente, você vai precisar “cloná-lo”. E adivinhe só? É super fácil:

git clone URL_DO_REPOSITÓRIO

3. Lidando com alterações

Agora, aqui está a parte divertida. Depois de trabalhar um pouco, você notará que fez algumas alterações. E é aqui que a mágica acontece. Primeiro, sempre verifique o status do seu repositório. Acredite, isso se tornará um hábito!

git status

Se você modificou ou adicionou alguns arquivos, é hora de prepará-los para um “commit”. Mas o que é um commit? Pense nisso como uma fotografia de como as coisas estão no momento. Então, adicione seus arquivos:

git add NOME_DO_ARQUIVO

Ou, se você estiver se sentindo aventureiro e quiser adicionar todas as suas alterações:

git add .

Agora, faça um “commit” com uma mensagem significativa sobre o que você fez:

git commit -m “Mensagem do commit”

4. Navegando entre branchs

Talvez você já tenha ouvido falar sobre “branchs” ou ramos. Elas são vias paralelas que permitem testar novidades sem alterar o curso original do seu projeto. Para listar suas branchs:

git branch

E se você quiser tentar algo novo? Crie uma branch:

git branch NOME_DA_BRANCH

E então mude para ela:

git checkout NOME_DA_BRANCH

Ah, e quando estiver pronto para juntar essa branch de volta ao principal? Use:

git merge NOME_DA_BRANCH

5. Sincronizando com o mundo

Então, depois de fazer todo esse trabalho, você vai querer compartilhá-lo com o mundo, certo? Para trazer as últimas alterações do GitHub:

git pull origin BRANCH

E para mostrar ao mundo suas incríveis alterações:

git push origin BRANCH

6. Conectando com repositórios remotos

Depois de dominar os básicos, certamente você vai querer conectar seu repositório local a um remoto, com o intuito de dar a você o poder de colaborar com outros desenvolvedores. Nesse sentido, esse comando une seu espaço de trabalho local a um repositório online, estabelecendo um link essencial para o trabalho colaborativo.

git remote add NOME_REMOTO URL_DO_REPOSITÓRIO

Ah, e se você estiver curioso sobre quais repositórios remotos estão conectados ao seu local, o comando abaixo vai listar todos eles para você, tornando fácil ver e gerenciar suas conexões.

git remote -v

7. Explorando o histórico de fazendo ajustes

Agora, uma das maiores vantagens do Git é poder revisitar e entender o histórico do seu projeto e ter um registro detalhado de cada commit feito, permitindo que você explore as mudanças e entenda a evolução do seu projeto:

git log 

E se quiser ver as alterações específicas de cada arquivo?

git diff

8. Desfazendo e guardando mudanças

A vida é cheia de erros e no desenvolvimento, isso não é diferente. Se você fez uma mudança que não era o que queria e quer descartar as alterações feitas no arquivo especificado, trazendo de volta a versão do último commit então…

git checkout — NOME_DO_ARQUIVO

Talvez, você só queira desfazer a adição de um arquivo à área de staging. Nesse caso, o comando abaixo é seu aliado, removendo o arquivo da área de staging, mas mantendo suas alterações.

git reset HEAD NOME_DO_ARQUIVO

E para aqueles commits que, bem, não deveriam ter acontecido?

git revert HASH_DO_COMMIT

Eventualmente, você pode se encontrar envolvido em uma atividade, mas de repente, necessita alternar rapidamente para uma tarefa diferente, preservando suas alterações atuais. Neste contexto o comando abaixo surge como um recurso indispensável, permitindo que você armazene modificações temporariamente, resultando em um diretório limpo e pronto para receber novos trabalhos.

git stash

E quando estiver pronto para retomar e trazer tudo de volta?

git stash pop

Por último, para manter tudo limpo, organizado e remover todos aqueles arquivos não rastreados e pastas, deixando seu repositório em estado de brilho.

git clean

 

Cobrimos bastante coisa referente a Comandos Git heim?! E olhe, isso é apenas a ponta do iceberg. O Git é uma ferramenta poderosa e quanto mais você o usa, mais truques você aprenderá e se alguma vez se encontrar em apuros, saiba que quase sempre há uma maneira de corrigir as coisas.

 

Boa sorte na sua jornada Git e GitHub!!!

HTTP Status Codes

,http status code

 

Olá, Devs!!!

Quando navegamos na web, frequentemente interagimos com diversos HTTP Status Codes, mesmo que indiretamente. Dessa forma, esses códigos atuam como pontes de comunicação entre servidores e usuários, informando o resultado de uma solicitação.

Além disso, dividimos os HTTP Status Codes em classes, baseando-se no primeiro dígito do código. Por exemplo, cada classe representa uma categoria de resposta. A seguir, listarei os status codes mais comuns e explicarei brevemente cada um:

1. Códigos de Resposta Informativos (1xx)

  • 100 – Continue: O servidor recebeu os headers da solicitação e o cliente deve continuar enviando o corpo da requisição.
  • 101 – Switching Protocols: O servidor concorda em alterar o protocolo conforme solicitado pelo cliente.
  • 102 – Processing (WebDAV): O servidor precisa de mais tempo para processar a solicitação, mas quer informar ao cliente que ele ainda está ativo.

2. Códigos de Resposta de Sucesso (2xx)

  • 200 – OK: Solicitação bem-sucedida. A resposta exata depende do método HTTP usado.
  • 201 – Created: A solicitação foi bem-sucedida e um recurso foi criado como resultado.
  • 202 – Accepted: O servidor aceitou a solicitação para processamento, mas ainda não a concluiu.
  • 203 – Non-Authoritative Information: A solicitação foi bem-sucedida, mas as informações retornadas podem ser de outra fonte.
  • 204 – No Content: A solicitação obteve sucesso, mas a resposta não contém conteúdo a enviar.
  • 205 – Reset Content: A solicitação foi bem-sucedida e o cliente deve resetar a visualização do documento.
  • 206 – Partial Content: O servidor está enviando apenas uma parte dos recursos devido a um cabeçalho de intervalo enviado pelo cliente.
  • 207 – Multi-Status: Resposta que pode conter múltiplos códigos de status para múltiplas operações independentes.
  • 208 – Already Reported (WebDAV): Utilizado para evitar que um cliente receba informações duplicadas.
  • 226 – IM Used: O servidor transformou ou manipulou a resposta a uma solicitação GET para o recurso a partir da representação original.

3. Códigos de Redirecionamentos (3xx)

  • 300 – Multiple Choices: Existem várias opções que um agente de usuário pode seguir.
  • 301 – Moved Permanently: Uma nova URL agora possui o recurso solicitado, que foi movido permanentemente.
  • 302 – Found: Diz ao cliente para procurar (navegar) outro URL. O recurso foi temporariamente movido, mas será realocado de volta no futuro.
  • 303 – See Other: O servidor está redirecionando o agente do usuário para um recurso diferente. A resposta pode ser encontrada em outra URL.
  • 304 – Not Modified: O recurso permanece sem modificações, e o cliente deve utilizar a versão em cache.
  • 305 – Use Proxy: O recurso solicitado está disponível apenas por meio de um proxy, cujo endereço é fornecido na resposta. Por motivos de segurança, muitos clientes HTTP (como Mozilla Firefox e Internet Explorer ) não obedecem a este código de status.
  • 307 – Temporary Redirect: Outra URL recebeu temporariamente o recurso, mas a mesma solicitação original deve acessá-lo.
  • 308 – Permanent Redirect: Similar ao 301, mas indica que não se deve alterar o método e o corpo da solicitação.

4. Códigos de Erro do Cliente (4xx)

  • 400 – Bad Request: A solicitação está formatada incorretamente ou o servidor não pôde entendê-la.
  • 401 – Unauthorized: O cliente precisa se autenticar para obter a resposta.
  • 402 – Payment Required: Reservado para uso futuro.
  • 403 – Forbidden: O servidor entendeu a solicitação, mas se recusa a autorizá-la. O cliente não tem direitos de acesso ao recurso.
  • 404 – Not Found: O recurso solicitado não pôde ser encontrado no servidor.
  • 405 – Method Not Allowed: O recurso solicitado não suporta o método de solicitação usado.
  • 406 – Not Acceptable: O servidor não pode produzir uma resposta que corresponda aos critérios dados na solicitação.
  • 407 – Proxy Authentication Required: Semelhante ao 401, mas o cliente precisa se autenticar para usar um proxy.
  • 408 – Request Timeout: O servidor não pôde esperar a solicitação do cliente.
  • 409 – Conflict: Um conflito com o estado atual do recurso de destino impediu a conclusão da solicitação.
  • 410 – Gone: O recurso de destino não está mais disponível no servidor de origem. O recurso foi removido permanentemente.
  • 411 – Length Required: O servidor exige que o cliente especifique o tamanho da solicitação.
  • 412 – Precondition Failed: Os cabeçalhos da solicitação não atenderam às condições dadas.
  • 413 – Payload Too Large: O servidor se recusa a processar a solicitação porque é maior do que o servidor pode ou é capaz de processar.
  • 414 – URI Too Long: A URI da solicitação é muito longa.
  • 415 – Unsupported Media Type: O formato de mídia dos dados da solicitação é incompatível com o servidor.
  • 416 – Range Not Satisfiable: O intervalo especificado na solicitação não pode ser satisfeito.
  • 417 – Expectation Failed: Pelo menos um dos servidores de entrada não atendeu à expectativa fornecida no campo de Expect header da solicitação.

5. Códigos de Erro do Servidor (5xx)

  • 500 – Internal Server Error: O servidor encontrou um erro e não pode concluir a solicitação.
  • 501 – Not Implemented: O servidor não reconhece o método de solicitação ou não tem capacidade de atender a solicitação.
  • 502 – Bad Gateway: Indica que o servidor, enquanto atuava como gateway ou proxy, recebeu uma resposta inválida do servidor Upstream.
  • 503 – Service Unavailable: O servidor não está pronto para lidar com a solicitação.
  • 504 – Gateway Timeout: O servidor estava agindo como um gateway ou proxy e não recebeu uma resposta a tempo.
  • 505 – HTTP Version Not Supported: O servidor não suporta a versão do protocolo HTTP usada na solicitação.

 

Em resumo, consideramos os HTTP Status Codes como ferramentas cruciais na era digital. Primeiramente, eles orientam e informam, além de facilitar a comunicação entre servidores e usuários. Isso resulta em uma navegação mais fluída e eficaz. Ao entendermos esses códigos, não só melhoramos nossa experiência na web, como também tornamos a resolução de problemas menos desafiadora.

 

Até mais!!!