# Repositórios e branches remotos Git funciona localmente. Commits, branches, logs estão gravados no repositório local. Para colaborar com outros projetos, precisamos publicar e ter acesso a repositórios públicos. É possível publicar através de vários protocolos. Além de um diretório local, uma das formas mais simples é utilizar SSH, já que independe de outra configuração e permite escrita. HTTP é uma boa opção somente leitura para repositórios públicos, já que não exige credenciais para acesso. A outra opção é o protocolo próprio do Git, através do git daemon. Para criar um novo repositório a partir de um repositório publicado, usamos o comando git clone. ~/$ git clone /home/user2/project Cloning into 'project'... done. ~/$ cd project ~/project$ ls -a . .. .git README ~/project$ Quando um repositório é clonado, temos uma cópia local das referências deste repositório. O repositório é registrado com um nome, sendo origin o nome padrão, e as referências a seus branches são prefixadas com este nome e uma barra. Para visualizar estes branches remotos, utilizamos a opção -r do comando git branch. ~/project$ git branch -r origin/HEAD -> origin/novo origin/devel origin/master origin/novo ~/project$ Note que o HEAD do repositório remoto aponta para o repositório remoto chamado novo. O HEAD remoto é utilizado para criar um novo branch local quando o repositório é clonado. ~/project$ git branch * novo ~/project$