Postagens

Git: Renomear, desfazer, mesclar ou excluir commits

Imagem
Se você sempre quis saber ou se já sabe mais nunca lembra os comandos de como renomear, desfazer, excluir ou mesclar um ou mais commits você chegou no lugar certo. ;)

Antes de tudo precisamos saber que com o comando abaixo conseguimos visualizar a hash, mensagem e a ordem que os commits foram feitos:
git log --oneline
- Renomeando um commit
Para mudar a mensagem do último commit, você pode utilizar o --amend:
git commit -m "Nova mensagem que vai substituir a anterior" --amend
Para mudar a mensagem de um commit específico, você pode usar o rebase interativo:
git rebase -i f0b5417~1 Repare no ~1, isso indica que irá buscar o commit da hash indicada e todos os demais commits a partir dela. Se você não colocar o ~1 o commit da hash pesquisa não irá ser mostrado no editor de texto a ser aberto, apenas os commits a partir dela.

Caso você queira buscar os 3 últimos commits:
git rebase -i HEAD~3
Seu editor de texto irá iniciar. Troque no texto a palavra pick por reword (ou só r) do com…

Oh My Zsh: Melhorando a produtividade do seu terminal

Imagem
Oh My Zsh é uma estrutura agradável, de código aberto e orientada pela comunidade para gerenciar sua configuração do Zsh (terminal feito para uso iterativo). Ele vem com milhares de funções úteis, ajudantes, plugins, temas e algumas coisas que fazem você gritar... "Oh My ZSH!"

São mais de 250 plugins opcionais para melhorar a usabilidade do terminal e mais de 125 temas.

Pré-requisitos
Sistema operacional baseado no Unix (macOS or Linux)curl ou wget devem estar instaladosgit deve estar instaladoInstalando o ZSH A primeira coisa a se fazer é instalar o ZSH, um framework para o seu terminal que irá deixá-lo mais interativo.

Como existem várias formas de instalação dependendo do sistema operacional que você está, leia esse guia de instalação: https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH

Após a instalação do ZSH, você conseguirá ver a sua versão no terminal:
zsh --version
Instalando o Oh my Zsh
Para instalar o Oh My Zsh você precisa executar o comando abaixo:

Utiliza…

CopyQ - Gerenciador de área de transferência

Imagem
Muitos de nós já passamos pela situação onde copiamos algo (CTRL + C) e depois perdemos o que copiamos e isso é bem frustante em alguns casos.

Para nossa alegria existe ferramentas que salva tudo o que copiamos para assim recuperarmos quando precisarmos. Hoje irei apresentar o CopyQ um cliente disponível para Linux, Windows e Mac.

O CopyQ monitora a área de transferência do sistema e salva seu conteúdo em guias personalizadas. A área de transferência salva pode ser posteriormente copiada e colada diretamente em qualquer aplicativo.


A sua instalação é bem fácil e os passos a passos você pode ver no site oficial da ferramenta. Após a instalação basta executar a ferramenta e ela passará a salvar tudo o que você copiar.

Eu sugiro que você marque a opção auto start, que está nas configurações da ferramenta, para assim sempre que o seu computador ligar a ferramenta já ser executada automaticamente.


Outra dica é aumentar a quantidade de items que ela irá salvar. Nas configurações acesse o m…

Docker: Gerenciar o Docker como um usuário não raiz

Imagem
Se você utiliza o Docker em seu Linux e toda vez tem que ficar digitando a senha do super usuário (sudo), hoje vou mostrar como executá-lo sem precisar do sudo.

O que iremos fazer é criar um grupo Unix com o nome de docker e adicionar os usuários que terão acesso ao docker sem precisar utilizar o sudo.

Para maiores detalhes sobre esse passo a passo, você pode conferir o original na documentação do Docker.

1- Crie o grupo Unix:
sudo groupadd docker
2- Adicione os usuários ao grupo:
sudo usermod -aG docker $USER Por padrão $USER é o usuário da sua sessão mas se preferir adicionar outro usuário bata subistitui-lo pelo nome do usuário. Para visualizar os usuários do seu sistema, basta digitar users no terminal.

3- Faça logoff ou reinicie seu computador para as configurações serem aplicadas.

4- Para ver se tudo está funcionando corretamente, execute o comando:
docker run hello-world
Se tudo estiver ocorrido bem, você verá algo parecido com a imagem abaixo:

HTTPie: Uma alternativa amigável ao curl

Imagem
HTTPie é um cliente HTTP de linha de comando com uma interface de usuário intuitiva, suporte a JSON, destaque de sintaxe, downloads semelhantes a wget, plug-ins e muito mais.

Seu objetivo é tornar a interação da CLI com os serviços da Web o mais amigável possível. Ele fornece um comando http simples que permite o envio de solicitações HTTP arbitrárias usando uma sintaxe simples e natural e exibe saída colorida. O HTTPie pode ser usado para teste, depuração e interação geral com servidores HTTP.

O HTTPie consiste em um único comando http projetado para depuração indolor e interação com servidores HTTP, APIs RESTful e serviços da Web, que ele realiza por:
- Padrões sensíveis
- Sintaxe de comando expressiva e intuitiva
- Saída de terminal colorida e formatada
- Suporte JSON incorporado
- Sessões persistentes
- Upload de formulários e arquivos
- Suporte a HTTPS, proxies e autenticação
- Suporte para dados de solicitação e cabeçalhos arbitrários
- Downloads semelhantes ao Wget
- Extensões

Gtop: Um painel de monitoramento do sistema para terminal

Imagem
Ferramentas de linha de comando como "top" dificultam a visualização do uso da CPU em aplicativos de vários processos (como Apache e Chrome), picos ao longo do tempo e uso de memória.

Afim de facilitar esse processo, existem diversas ferramentas como o vtop, htop e o gtop.

Mas o que é o Gtop?
O gtop é uma ferramenta que lê informações sobre processos e o estado do sistema no modo dinâmico. Está escrito em node.js e pode ser facilmente estendido. Para verificar seu código fonte basta acessar o github.

Qual a diferença entre o vtop e o gtop?
Com o VTOP você consegue monitorar apenas o CPU, Memória e os PID. Já com o GTOP você consegue monitorar CPU, Memória, SWAP, PID, Network e o Disco.

Outra diferença entre os dois é que com o VTOP você consegue matar um determinado PID, setar um intervalo em que o monitorar irá atualizar os dados mostrados na tela, consegue também mudar o tema do monitor, desativar interação com o mouse e definir um tempo para o monitor ser fechado automatic…

Vtop: Um monitor de atividade do sistema para terminal

Imagem
Ferramentas de linha de comando como "top" dificultam a visualização do uso da CPU em aplicativos de vários processos (como Apache e Chrome), picos ao longo do tempo e uso de memória.

Afim de facilitar esse processo, existem diversas ferramentas como o vtop, htop e o gtop.

Mas o que é o Vtop?
O Vtop é um monitor de atividades de código aberto e gratuito para a linha de comando. Está escrito em node.js e pode ser facilmente estendido. Por que não verificar o código fonte?

Qual a diferença entre o vtop e o gtop?
Com o VTOP você consegue monitorar apenas o CPU, Memória e os PID. Já com o GTOP você consegue monitorar CPU, Memória, SWAP, PID, Network e o Disco.

Outra diferença entre os dois é que com o VTOP você consegue matar um determinado PID, setar um intervalo em que o monitorar irá atualizar os dados mostrados na tela, consegue também mudar o tema do monitor, desativar interação com o mouse e definir um tempo para o monitor ser fechado automaticamente. Já com o GTOP não temo…

G Cloud: Gerando chave de autenticação para o Google Cloud

Imagem
Para integrar uma aplicação com os serviços disponibilizados pelo Google Cloud, será nescessário gerar uma chave de autenticação para que a sua aplicação possa ter permissão de comunicar com os serviços da Google.

Se você é marinheiro de primeira viagem, conseguir essa chave acessando o painel do google cloud é um puco tanto complexo.

Logo abaixo está o passo a passo de como obter as chaves de autenticação. Para maiores informações você pode acessar a documentação oficial, clicando aqui.

1- Já na página inicial do console do G Cloud, acesse as opções:

2- No botão "Gerar Credenciais" teremos algumas opções.

2.1- Chave de API
Será criada uma chave de API Simples que poderá ser usada em alguns serviços como exemplo o Google Maps, onde você pode passá-la pela URL da API.

2.2- Id do cliente do OAuth
Essa opção serve para sua aplicação poder ter uma opção de login ou sincronização dos dados com o Google.

2.3- Conta de Serviço
Essa opção irá gerar uma chave em um arquivo JSON e pode se…

Python: Conhecendo a declaração With

Imagem
A declaração a "with" foi inserida ao Python na PEP 343 em 2005. Com ela conseguimos tornar o código mais limpo, legível e seguro.

Resumidamente ela é um gerenciador de contexto reponsável por garantir que determinados recursos sejam liberados independente se o código deu sucesso ou erro.

O exemplo mais comum e de melhor entendimento é o de leitura de arquivos. Suponha que um arquivo é aberto. Quem irá garantir que o mesmo será fechado? Por mais que você coloque no código de forma explícita que ele deve ser fechado, se ocorrer uma exceção, sairá do escopo sem executar o restante do código pulando o fechamento.

Para esse caso normalmente usaríamos o try/finally, pois o finally iria garantir que o arquivo seria fechado. Mais lembre-se que o with alem de garantir segurança ele visa um código mais limpo e menos complexo.

Mas afinal, como é um código que utiliza o "with"? Veja abaixo: Na linha 1 utilizamos o "with", logo em seguida chamamos a função "ope…

asdf-vm: Gerenciador de versão extensível com suporte a várias linguagens e ferramentas de desenvolvimento

Imagem
Nos dias de hoje é muito comum você ter que lidar com diversas versões de diversas linguagens ao mesmo tempo.

Com o asdf você vai perceber como isso se torna muito fácil de se gerenciar e o melhor é que ele tem diversos plugins, como exemplo: node.js, python, go, ruby, redis, mysql, clojure, erlang, dart, flutter, dotnet-core, docker-slim entre outros.

Instalação
A instalação dele é muito simples bastando apenas rodar alguns comandos em seu terminal. Para isso basta acessar o site oficial, clicando aqui, para ver os comandos de instalação.

Para confirmar que a instalação foi efetuada, abra seu terminal novamente e rode o comando asdf.

Adicionando e instalando um plugin
1- Ver os plugins disponíveis para instalação:
asdf plugin list all Você pode também acessar a página oficial para ver todos os plugins disponíveis.

2- Adicionar um plugin:
asdf plugin add NOME_PLUGIN Exemplo: asdf plugin add nodejs

3- Ver os plugins já adicionados:
asdf plugin list
4- Ver as versões de pacotes disponíveis de u…