Jonathan Fontes

Mercurial - Cheat Sheet

5 de October de 2017

90% dos meus projecto é em GIT. Existiu a necessidade de usar o Mercurial num projecto e tive a oportunidade de aprender um pouco deste mundinho. :P

Instalação

Costumo usar o homebrew para instalar pacotes no OSx (porque sou um utilizador habitual de OSx).

Depois instalado homebrew, poderemos avançar para instalar o mercurial, para isso, vamos digitar no terminal:

brew install hg

!! Nota importante, esta lista serve apenas para uma breve e rápida introdução ao Mercurial, !! os comandos descritos aqui podem usar mais parâmetros. Esta explicação não representa todo o potêncial da utilização destes comandos.
!! Pode consultar a documentação oficial no site.

Comandos Úteis

Mercurial HG

hg init

Inicializa um repositório no directorio actual.

hg clone

hg clone <repository> name-of-folder-local

Clona um repositório num dado caminho remoto ou não, para um determinado caminho local. Nota que name-of-folder-local é opcional e não é requerido.

hg add

hg add name-of-file-or-folder

Para adicionar o ficheiro ou todos os ficheiros de um dado directório, para o próximo commit.

hg commit

hg commit -m "message"

Realiza um commit na árvore actual do repositório, está operação é apenas local e não afecta o repositório remoto.

hg status

hg status

Demonstra todas as alterações existentes na árvore local. Aqui está uma pequena explicação do que representa cada um dos items.

  1. M - Representa uma modificação no ficheiro
  2. ? - Não existe na árvore do mercurial.
  3. R - Foi removido.
  4. ! - Foi removido por outro comando sem ser do HG
  5. I - É ignorado
  6. A - Adicionado e pronto para ser commited.

hg pull & hg push

hg pull

Vai buscar todas as alterações ao repositório remoto para o local. Não tendo nenhum afecto na árvore local até se correr o comando hg update -C para actualizar tudo.

hg push

Faz o inverso do hg pull.

Decide colocar os dois juntos pois está relacionados, sendo que um é o inverso do outro.

hg in & hg out

Estes dois comando não são muitos conhecidos, mas eu acho bastante útel para quando quero saber se o comando de pull ou push pode afectar. O in é o mesmo que o pull mas faz do género um "dry-run", ou seja, vai verificar se existe algumas alterações no repositório remoto que não existe no local. O out é o mesmo que o push mas em modo "dry-run", ou seja verifica se existe algum commit que falta fazer push.

hg branch && hg branches

hg branch <name-of-branch>

Este comando vai criar um novo branch, se não especificares o nome do branch, vai devolver o branch actual.

hg branches

Vai indicar quantos branches existem na árvore do mercurial.

hg merge

hg merge <name-of-branch>

Este comando vai fazer um merge do branch especificado para o branch actual. ! Nota: Faz apenas um merge local, para ter efeito no repositório remoto, deveras correr, commit e depois push.

Mercurial

I don't know why all developer say, "Proudly Hosted by DigitalOcean".

© 2017 · 2018