Tool.Yun
Ferramentas úteis para desenvolvedores
CSV para dados
Codificador/decodificador de matriz hexadecimal Base64
Codificador/decodificador de string Base64
Consumo de Energia e Despesas do Computador
Conversor dBm mW
Conversor de Coordenadas Geográficas
Conversor de algarismos romanos
Conversor de arquivo Base64
Conversor de base inteira
Conversor de caracteres Unicode para entidades Java
Conversor de formato de variáveis de ambiente
Conversor de muitas unidades
Conversor de propriedades
Conversor de unidade de armazenamento de dados
Excel para dados
Gerador ULID
Normalizador de e-mail
Texto para Unicode
Texto para binário UTF-8
Torrent para Magnet
Analisador JWT
Analisador SAML
Analisador de certificado/chave
Argon2 Hasher
Assinante e verificador RSA/DSA/ECDSA
Bcrypt
Bytes de Niceware para frase-senha
Calculadora CRC
Codificador/Decodificador Bech32
Compartilhamento secreto de Shamir
Conversor de certificado SSL
Criptografar/descriptografar texto
Criptografia AGE
Criptografia PGP
Criptografia RSA
Criptografia de arquivos PGP
Criptografia de strings Jasypt
Descriptografia de cripta do cofre Ansible
Gerador Hmac
Gerador JWT
Gerador de RSE
Gerador de certificados X509
Gerador de chaves PGP
Gerador de pares de chaves ECDSA
Gerador de pares de chaves Ed25519
Gerador de pares de chaves RSA
Hasher de arquivos
Paseto/PASERK Local
Paseto/PASERK Público/Privado
Texto hash
Decodificador de código QR
Gerador de código QR
Gerador de código QR WiFi
Gerador de código de barras
Gerador de informações de contato QR
Leitor de código de barras
Validador GTIN
tools.epc-qrcode-generator.name
Analisador e formatador de telefone
Calculadora de IMC
Calculadora de Ritmo de Corrida
Calculadora de SLA
Compatibilidade de licença de software
Conversor de Moedas
Conversor de RMB para letras maiúsculas
Conversor de calendário
Dicionário online
Diretrizes de iluminação IES
Explicar o comando Shell
Pesquisa Unicode
Pesquisador ISO 639
Pesquisador de códigos de país ISO 3166
Validador Luhn
Validador de Números de IVA
Validador e analisador de IBAN
Validador e analisador de ISBN
Verificador de cartão de crédito
Alarme de tempo
Analisador de arquivos ICAL
Calculadora TTL
Calculadora de Data+Duração
Calculadora de Duração
Calculadora de ETA
Calculadora de dias
Contagem regressiva
Conversor de data e hora
Conversor de fuso horário
Conversor de números de semana
Cron/Alarme de dia da semana
Cronômetro
Fusão iCal
Gerador ICAL
Qual dia?
Construtor de Criação de Banco de Dados
Construtor de string de conexão de banco de dados
Conversor de arquivos HEX
Conversor de cachos
Conversor de cotações
Desobfuscador/Descompactador Javascript
Divisor de Arquivos
Editor de comando CLI
Embelezador Javascript
Embelezar e formatar SQL
Escaper de Cordas
Falsificador de dados
Formatar e minimizar CSS/JS
Gerador de Favicon
Gerador de GitIgnore
Gerador de Mailto
Gerador de Parâmetros SQL
Gerador de atributos Gita
Gerador de meta gráfico aberto
Gerador de scripts de teste de carga K6
Gerador de segredos do Django
Gerador de tabelas de banco de dados
INSERÇÃO JSON para SQL
JSON para Typescript
Json para Protobuf
Marcador de código/scripts
Minificador SQL
Ofuscador de Javascript
Stacktrace mais bonito
Temporizador Pomodoro
Testador Picomatch
Testador de IU do Swagger
Testador de fuga ANSI
Testes de API
Conversor Docker Compose para Docker Run
Conversor Docker Run para Docker Compose
Conversor de formato Docker Compose
Docker Compose para Kubernetes
Docker Compose para Quadlets
Docker Compose para arquivo .env
Docker corre para Quadlets
Docker executado no Kubernetes
Downloader de imagens Docker
Etiquetas Docker Pangolin
Gerador RBAC do Kubernetes
Gerador de rótulos Dockerfile
Inspeção do Docker para execução do Docker
Traefik Docker Compose Maker
Validador do Docker Compose
Calculadora de Amortização
Folha de dicas de Markdown
Folha de dicas de commit semântico do Git
Folha de dicas de regex
Folha de dicas de sintaxe JSONPath
Folha de dicas de sintaxe XPath
Folha de dicas do Bash
Folha de dicas do Docker
Folha de dicas do Docker Compose
Folha de dicas do Docker SWARM
Folha de dicas do Dockerfile
Folha de dicas do Git
Folha de dicas do Jq
Folha de dicas do K8s
Folha de dicas do Nano
Folha de dicas do Nginx
Folha de dicas do PowerShell
Folha de dicas do Sed
Folha de dicas do VIM
Folha de referências comuns de expressões regulares
Folha de referências de seletores CSS
Guia de comandos Tmux
Guia de comandos Zellij
Guia de consulta rápida de comandos de tela
Guia de consulta rápida do comando chmod
Analisador MSG do Outlook
Analisador de Cookies
Analisador de Relatórios DMARC
Analisador de URL
Analisador de e-mail
Analisador de e-mail de rejeição
Calculadora de Resistores
Codificador/Decodificador Hexadecimal
Console de porta serial
Construtor de URLs
Construtor de comandos Nmap
Conversor GZip/Deflate
Conversor Middle-Endian
Conversor MongoDB ObjectId
Conversor SMART Raw
Conversor de codificação MIME
Conversor de números de ponto flutuante
Decodificador Outlook Safelink
Decodificador de URL de compartilhamento do SharePoint
Decodificador de transações ETH
Detector de tipo de arquivo
Detector/Decodificador de Conjunto de Caracteres de Texto
Expansor de URLs curtas
Extrator de ID de floco de neve
Gerador TCPDump
Guia de referência rápida de cabeamento RJ45 Cat6
Informações do código-chave
Leitor de arquivos Parquet
Mascarador de dados confidenciais
Pesquisador de propriedades LDAP do ActiveDirectory
Testador HTTPS
Testador de DNS
Testador de Pixel Morto
Testador de propagação de DNS
decodificador EMV TLV
键盘测试器
Computador de fitness
Conversor de Energia Alimentar
Conversor de Frequência
Conversor de Unidades de Pressão
Conversor de aceleração
Conversor de energia
Conversor de iluminância
Conversor de prefixos SI
Conversor de taxa de fluxo de volume
Conversor de temperatura
Conversor de unidades de comprimento
Conversor de unidades de energia
Conversor de unidades de força
Conversor de unidades de massa
Conversor de unidades de volume
Conversor de unidades de área
Conversor de unidades de ângulo
Conversor de velocidade
Conversor UUID
Gerador de NanoIDs
Gerador de Senhas
Gerador de UUIDs
Gerador de código OTP
Gerador de código PIN
Gerador de numerônimos
Gerador de números aleatórios
Gerador de senhas BIP39
Gerador de senhas Diceware
Gerador de tokens
Comparação de imagens
Conversor HEIC
Conversor ICO/PNG
Conversor de formatos de imagem
GIF para MP4
Gravador de câmera
Imagem para SVG (potrace)
Inversor de cores de imagem
Leitor de qualidade de imagem EXIF/Metadados/GPS/JPEG
Marcador d'água
OCRize imagem e PDF
Recortar imagem
Redimensionador de imagens
Remover EXIF
Remover o fundo da imagem
Visualizador de SVG
Achatador/Desachatador JSON
Analisador de tamanho JSON
CSV para JSON
Consulta Json
Conversor JSON para JS
Conversor JSON para YAML
Conversor de JS para JSON
Conversor de strings JSON
Código JSON para PHP
Diferença JSON
Editor JSON
Fusão JSON
Geração de objetos para JSON
JSON Linter
JSON embeleza e formata
JSON para .env
JSON para C#
JSON para CSV
JSON para MessagePack
JSON para Python
JSON para SQL DDL
JSON para TOML
JSON para TS
JSON para XML
JSON para dados
JSON para entidade Java
JSON para objeto
JSON para viagem
Json Escaper/Unescaper
Json para esquema
Matriz JSON para PHP
Mestre de classificação JSON
Minificar JSON
PHP-Array para JSON
Pacote de mensagens para JSON
Testador Jq/JSONPath
tools.json-patch.name
Cara ou coroa
Roda da fortuna
Rolador de dados
Selecionador de cartas
Avaliador de matemática
Calculadora Binária
Calculadora de gorjetas
Conversor de formatos matemáticos
OCR de matemática
Visualizador de curvas trigonométricas/de equações
Calculadora de Proporção de Aspecto
Calculadora de distância geográfica
Calculadora de porcentagem
Construtor de benchmark
Compressor de PDF
Concatenador de PDF
Criptografar PDF
Descriptografar e desbloquear PDF
Extrator de páginas PDF
Extrator de texto PDF
HTML para PDF
Pdf Linearizar/FastWeb
Verificador de assinatura de PDF
Construtor de expressões Cron
Analisador de agente de usuário
Analisador de força de senha
Apanhador de URL
Autorização SIP
Calculadora Chmod
Calculadora RAID
Calculadora ZPOOL RAID
Calculadora de HDD
Calculadora de confiabilidade RAID
Calculadora de exclusão de sub-redes IP
Calculadora de intervalo CIDR para IP IPv4/6
Calculadora de intervalo IPv4/6 para CIDR(s)
Calculadora de sub-rede IPv4
Calculadora de sub-rede IPv6
Calculadora de taxa de transferência de dados
Calculadora visual de sub-redes
Codificar/decodificar strings formatadas em URL
Consultas DNS
Consultas DNS/RDAP do Cloudflare
Conversor CSS XPath
Conversor Punycode
Conversor de Unidades CSS
Conversor de cores
Conversor de endereço IPv6
Conversor de endereço MAC
Conversor de endereços IPv4
Conversor de pixels REM
Criador de Fragmentos de Pesquisa de Texto de URL
Códigos de status HTTP
Decodificador ARPA
Decodificador X-VR-SpamCause
Downloader multi-link
Editor HTML WYSIWYG
Embelezador CSS
Embelezador HTML
Entidades HTML de escape
Expansor de alcance IPv4
Folha de dicas do ZPool
Formatador Nginx
Formatador de comandos do shell
Força da senha Zxcvbn
Gerador Apache LogRotate
Gerador Crontab
Gerador FStab
Gerador HTAccess
Gerador Htpasswd/htaccess
Gerador Option43
Gerador Rsync
Gerador WPA PSK
Gerador de Comandos Curl
Gerador de DNS BIMI
Gerador de DNS DKIM
Gerador de DNS DMARC
Gerador de DNS PTR
Gerador de DNS SPF
Gerador de Iptables
Gerador de ULA IPv6
Gerador de URL UTM
Gerador de autenticação básica
Gerador de comandos UFW
Gerador de comandos de desligamento
Gerador de configuração Wireguard
Gerador de endereços MAC
Gerador de espaço reservado SVG
Gerador de gradiente CSS
Gerador de portas aleatórias
HAS Sanitizante
HTML para XHTML
HTML para dados
IPv4-6/IPRange/CIDR em IPRange/CIDR/IPMask
Imagem para CSS
Informações do dispositivo
Inteiros para IPv4/IPv6
Limpador de HTML
Limpador de URL
Linearizador de comandos do shell
Listador de sub-redes IPv4
Localização geográfica de IP
Meu endereço IP
Minificador de HTML
Números de porta
Pesquisa de endereço MAC
Ping
Roda de cores
Slugify string
Testador de microfone
Testador de portas TCP/UDP
Teste de websocket
Tipos MIME
Verificador DNSBL
Verificador Whois
Verificador de contraste de cores
gerador de linha de comando firewalld
tools.restic-command-generator.name
tools.url-redirection-checker.name
Colar como Markdown
Diferença em Markdown
Editor de Markdown
Embelezador de tabela Markdown
Epub para Markdown
Gerador de tabelas Markdown
Gerador de índice de marcação
HTML para markdown
Markdown Lorem Ipsum
Markdown para DOCX
Markdown para HTML
Markdown para dados
Markdown para texto
Pré-visualização em Markdown
tools.markdown-format-converter.name
TOML Linter
TOML para JSON
TOML para YAML
Arquivos de pacote para IA
Calculadora de Levenshtein
Codificador/Decodificador de Token GPT
Comparar fontes
Compartilhador de links sociais
Conversor de caixa
Conversor de código Morse
Conversor de layout de teclado
Conversor de lista
Conversor de runas
Diagrama de estrutura de pastas
Diferença de texto
Divisor de prompt de IA
Estatísticas de texto
Estimador de Token GPT
Exportador de sereias
Extrair texto de HTML
Formatador Unicode
Gerador de citações
Gerador de comandos Sed
Gerador de texto de arte ASCII
Gerador/Banner Zalgo
Imagem para arte ASCII
JSON para TOON
Leitor RSVP
Listas Comparar
Localizador de linhas duplicadas
Ofuscador de cordas
Olá, gerador.
Palavras Distintas
Seletor de emojis
Seletor de linhas aleatórias
Substituidor de texto inteligente e quebra de linha
TOON para JSON
Tabulação para Espaços
Testador de Regex
Texto para nomes Unicode
Texto para o alfabeto da OTAN
Tradutor de texto
Unicode para GSM-7
Verificador I e L
Conversão de ObjGen para HTML
Formatador XML
Testador XPath
Testador XSLT
XML Linter
XML para JSON
Achatador/Desachatador YAML
Conversor de YAML para JSON
Embelezar e formatar YAML
Fusão YAML
YAML para TOML

Folha de dicas do Git

Git é um software de gerenciamento de versões descentralizado. Com este guia, você terá acesso rápido aos comandos mais comuns do git.

Git is a distributed version control system: every clone is a full repository with its own history, branches and tags. This is a quick reference for the commands that come up daily — placeholders are written as <file>, <branch>, <commit> and <url>.

💡 Every command below has its own help (git rebase --help), and the destructive ones (clean, push, rm, mv) take -n / --dry-run to preview what would happen.

⚙️ Configuration

# identity used on every commit
git config --global user.name "<name>"
git config --global user.email "<email>"

# name of the branch created by git init
git config --global init.defaultBranch main

# editor for messages, rebases, ...
git config --global core.editor "code --wait"

# rebase instead of merging on pull
git config --global pull.rebase true

# plain 'git push' works on new branches
git config --global push.autoSetupRemote true

# every setting and the file it came from
git config --list --show-origin

# override for this repository only
git config --local user.email "<work-email>"

Handy aliases:

git config --global alias.st status

git config --global alias.co checkout

git config --global alias.lg "log --oneline --graph --decorate --all"

git config --global alias.last "log -1 --stat"

🚀 Get Started

# create a repository in the current directory
git init

# clone a remote repository
git clone <url>

# clone into a specific directory
git clone <url> <directory>

# clone and check out one branch
git clone --branch <branch> <url>

# shallow clone, latest commit only
git clone --depth 1 <url>

# clone including submodules
git clone --recurse-submodules <url>

# what is staged, changed, untracked
git status

# the same, in short format
git status -sb

➕ Staging

# stage a specific file
git add <file>

# stage everything under the current directory
git add .

# stage everything in the repository, deletions included
git add -A

# interactively stage individual hunks
git add -p <file>

# stage modifications and deletions, not new files
git add -u

# unstage, keep the changes in the working tree
git restore --staged <file>

# stop tracking a file, keep it on disk
git rm --cached <file>

# rename and stage in one step
git mv <old> <new>

# which .gitignore rule is hiding this file?
git check-ignore -v <file>

✅ Commit

# commit what is staged
git commit -m "<message>"

# stage tracked changes and commit
git commit -am "<message>"

# rewrite the last commit (message + content)
git commit --amend

# amend without changing the message
git commit --amend --no-edit

# fixup commit, squashed later by --autosquash
git commit --fixup <commit>

# add a Signed-off-by trailer
git commit -s -m "<message>"

# empty commit, e.g. to trigger CI
git commit --allow-empty -m "<message>"

⚠️ --amend rewrites history. Only amend commits that have not been pushed to a shared branch.

🌿 Branches

# list local branches
git branch

# local and remote-tracking branches
git branch -a

# last commit and upstream of each branch
git branch -vv

# switch to an existing branch
git switch <branch>

# create a branch and switch to it
git switch -c <branch>

# jump back to the previous branch
git switch -

# older equivalent of switch -c
git checkout -b <branch>

# branch off a specific commit or tag
git switch -c <branch> <commit>

# rename a branch
git branch -m <old> <new>

# delete a merged branch
git branch -d <branch>

# force-delete an unmerged branch
git branch -D <branch>

# branches already merged into HEAD (safe to delete)
git branch --merged

🔀 Merging & Rebasing

# merge a branch into the current one
git merge <branch>

# always create a merge commit
git merge --no-ff <branch>

# bring in the changes as one staged change set
git merge --squash <branch>

# bail out of a conflicted merge
git merge --abort

# replay the current branch on top of another
git rebase <branch>

# interactively squash, reword, drop, reorder commits
git rebase -i HEAD~5

# apply the --fixup commits automatically
git rebase -i --autosquash <base>

# resume after resolving conflicts
git rebase --continue

# drop the conflicting commit and continue
git rebase --skip

# return to the state before the rebase
git rebase --abort

# resolve conflicts with the configured merge tool
git mergetool

Resolving a conflict:

# 1. see which files conflict
git status

# 2. edit them and remove the <<<<<<< ======= >>>>>>> markers

# 3. mark each resolved file
git add <file>

# 4. resume (during a merge: git merge --continue)
git rebase --continue

⚠️ Rebasing rewrites commits. Never rebase a branch other people are already working on.

🌍 Remotes & Syncing

# list remotes and their URLs
git remote -v

# add a remote
git remote add origin <url>

# point a remote somewhere else
git remote set-url origin <url>

# rename a remote
git remote rename <old> <new>

# forget a remote
git remote remove <name>

# download objects and refs, change nothing
git fetch origin

# fetch everything, drop deleted remote branches
git fetch --all --prune

# fetch + merge (or rebase) the upstream branch
git pull

# replay local commits on top of the upstream
git pull --rebase

# push the current branch
git push

# push and set the upstream tracking branch
git push -u origin <branch>

# force-push, but refuse to clobber new commits
git push --force-with-lease

# delete a remote branch
git push origin --delete <branch>

# push all tags
git push origin --tags

⚠️ Prefer --force-with-lease over --force: it aborts if someone else pushed in the meantime.

📦 Stashing

# shelve tracked changes and clean the working tree
git stash

# include untracked files
git stash -u

# stash specific paths with a label
git stash push -m "<message>" <file>

# list every stash
git stash list

# show a stash as a patch
git stash show -p stash@{0}

# re-apply the newest stash and drop it
git stash pop

# re-apply a specific stash, keep it in the list
git stash apply stash@{2}

# create a branch from a stash and apply it
git stash branch <branch>

# delete one stash
git stash drop stash@{0}

# delete all stashes
git stash clear

🔍 Inspecting

# the whole history as a compact graph
git log --oneline --graph --decorate --all

# history of a file, with diffs
git log -p <file>

# history of a file, following renames
git log --follow <file>

# filter by date and author
git log --since="2 weeks ago" --author=<name>

# search commit messages
git log --grep="<pattern>"

# commits that added or removed a string
git log -S"<string>"

# commits in b that are not in a
git log <branch-a>..<branch-b>

# commit count per author
git shortlog -sn

# a single commit with its diff
git show <commit>

# working tree vs. index
git diff

# index vs. last commit
git diff --staged

# between two commits
git diff HEAD~1 HEAD

# changes since the branches diverged
git diff <branch-a>...<branch-b>

# summary of changed files
git diff --stat

# who last touched every line
git blame <file>

# blame a range of lines only
git blame -L 10,40 <file>

# search the tracked files
git grep "<pattern>"

# every position HEAD has had — your safety net
git reflog

🍒 Cherry-pick

# apply one commit onto the current branch
git cherry-pick <commit>

# apply a range of commits
git cherry-pick <commit-a>^..<commit-b>

# apply without committing
git cherry-pick -n <commit>

# after resolving conflicts
git cherry-pick --continue

# undo the whole cherry-pick
git cherry-pick --abort

🏷 Tags

# list tags
git tag

# list matching tags
git tag -l "v1.*"

# annotated tag on HEAD
git tag -a v1.0.0 -m "Release v1.0.0"

# tag an older commit
git tag -a v1.0.0 <commit>

# show a tag and its commit
git show v1.0.0

# push one tag
git push origin v1.0.0

# push all tags
git push origin --tags

# delete a local tag
git tag -d v1.0.0

# delete a remote tag
git push origin --delete v1.0.0

# closest tag to the current commit
git describe --tags

🧯 I’ve Made a Mistake

# fix the last commit message
git commit --amend

# undo the last commit, keep the changes unstaged
git reset HEAD~1

# undo the last n commits, keep the changes
git reset HEAD~<n>

# undo the last commit and throw the changes away
git reset --hard HEAD~1

# discard changes to one file
git restore <file>

# discard every uncommitted change
git restore .

# restore a file as it was at a commit
git restore --source=<commit> <file>

# undo a commit with a new commit (safe when shared)
git revert <commit>

# stage the revert without committing
git revert -n <commit>

# make the local branch match the remote (fetch first)
git reset --hard origin/<branch>

# find the lost commit...
git reflog

# bring a lost commit back on a new branch
git switch -c <branch> <commit>

git reset modes at a glance:

ModeMoves HEADIndex (staging)Working treeUse it to
--soft✅untoucheduntouchedRecommit differently, keep everything staged
--mixed✅resetuntouchedUnstage but keep the edits (default)
--hard✅resetresetThrow the changes away entirely ⚠️

💡 Nothing committed is really lost for ~90 days: git reflog lists every commit HEAD pointed at, even on deleted branches.

🧹 Cleaning

# dry run: what would be removed
git clean -n

# remove untracked files and directories
git clean -fd

# also remove ignored files (build output, node_modules)
git clean -fdx

# compress and tidy the object database
git gc

# drop unreachable objects
git prune

# check the repository for corruption
git fsck

🐛 Debugging

# begin a binary search for a bad commit
git bisect start

# a commit that is broken (often HEAD)
git bisect bad <commit>

# a commit that was fine
git bisect good <commit>

# let a test script decide automatically
git bisect run <command>

# end the search and return to the original HEAD
git bisect reset

# follow lines moved from other files
git blame -C <file>

🧩 Submodules & Worktrees

# add a submodule
git submodule add <url> <path>

# check out every submodule
git submodule update --init --recursive

# update submodules to their latest commit
git submodule update --remote

# commit each submodule sits on
git submodule status

# check out a second branch side by side
git worktree add ../<dir> <branch>

# list linked working trees
git worktree list

# remove one again
git worktree remove ../<dir>

🧠 Miscellaneous

# rename the local default branch
git branch -m master main

# graph of merge commits only
git log --graph --merges

# export a snapshot without .git
git archive -o release.zip HEAD

# contributions per author
git shortlog -sn --no-merges

# full SHA of the current commit
git rev-parse HEAD

# name of the current branch
git rev-parse --abbrev-ref HEAD

# repository size on disk
git count-objects -vH

# enable background repacking (Git 2.30+)
git maintenance start

Update a feature branch with the latest mainline:

git switch <branch>
git fetch origin <main-branch>
git rebase origin/<main-branch>   # or: git merge origin/<main-branch>

📚 Resources

  • Official documentation
  • Pro Git (free book)
  • Interactive branching tutorial
  • Dangit, Git!?! — recovering from the classic mistakes