Início / Recursos / Código / GitNest
GitNest — hospedagem Git privada com clone e push no osFoundry
Git de verdade por HTTPS para os repositórios do seu workspace, com tokens de acesso sob seu controle.
O GitNest é o servidor Git nativo do osFoundry. Todo repositório do seu workspace tem um remote Git de verdade, no qual você faz clone e push por HTTPS com qualquer cliente Git padrão — sem plugin, sem exportação, sem uma segunda conta. A autenticação usa tokens de acesso do workspace que você mesmo cria e revoga. O repositório que você clona é o mesmo que a IDE web edita e que o Maestro lê, então o trabalho feito na sua máquina e o trabalho feito no workspace compartilham o mesmo histórico.
Resposta rápida
- Faça clone e push de qualquer repositório do workspace por HTTPS, com Git padrão.
- Autentique-se com tokens de acesso do workspace que você mesmo cria, limita e revoga.
- Por padrão, os repositórios são privados ao workspace a que pertencem.
- O mesmo repositório sustenta a IDE web, então um push aparece no workspace.
- Funciona com qualquer cliente Git — linha de comando, uma IDE ou um job de CI.
O que é
O GitNest é um remote Git que pertence ao seu workspace. Não é o espelho de um repositório hospedado em outro lugar, nem um substituto para hospedagem pública de código aberto — é onde mora o código do próprio workspace, acessível da sua máquina com o Git que você já usa. Por ser Git de verdade, e não uma exportação, os comandos de sempre funcionam sem adaptação: clone, fetch, branch, push e qualquer ferramenta construída sobre eles.
Principais recursos
- Clone, fetch e push via smart HTTP, usando a implementação de referência do Git.
- Tokens de acesso por usuário, com data de expiração e revogação em um clique.
- Autorização limitada ao workspace — um token só alcança repositórios do próprio workspace.
- Acesso de leitura e escrita definido por repositório, então um token pode ter o push negado.
- Os pushes aparecem no workspace, então a IDE web e o Maestro enxergam o que você enviou.
- Versões publicadas são protegidas: um push que as reescreveria é recusado, não aplicado em silêncio.
Como fazer na osFoundry
- Crie um token de acesso — Abra Configurações → tokens de repositório e crie um. Ele é exibido uma única vez, então copie na hora. Defina uma expiração — um token que nunca expira é um token com que você nunca vai parar de se preocupar.
- Copie a URL de clone — Abra o repositório em Código e use o painel Clone. A URL carrega o seu workspace, porque um cliente Git não consegue enviar cabeçalhos personalizados e o endereço precisa ser autossuficiente.
- Faça o clone — Rode git clone com a URL. Use o token como senha quando o Git pedir; o nome de usuário pode ser qualquer um. Um credential helper vai memorizá-lo.
- Faça commit e push normalmente — Crie branches, faça commits e pushes com os comandos que você já usa. Nada no fluxo de trabalho é específico do osFoundry.
- Veja no workspace — O push é refletido de volta no workspace, então a branch e seus arquivos aparecem na IDE web e ficam disponíveis para o Maestro.
Como a osFoundry se compara
| Recurso | osFoundry | A maioria das outras ferramentas |
|---|
| Onde o código fica | Um remote Git de verdade, dentro do seu próprio workspace. | Uma conta de hospedagem à parte, conectada por uma integração. |
| Como tirar o código de lá | git clone — o comando padrão, sem etapa de exportação. | Baixar um arquivo compactado ou instalar um plugin para sincronizar. |
| Credenciais | Tokens do workspace que você cria e revoga, com expiração. | A senha de uma conta ou uma autorização OAuth para um terceiro. |
| Editor e remote | O mesmo repositório sustenta os dois, então eles nunca saem de sincronia. | Um repositório hospedado, espelhado no editor e mantido em sincronia por um job. |
Casos de uso
- Pessoa desenvolvedora que prefere trabalhar local: Clona o repositório do workspace, trabalha no próprio editor com as próprias ferramentas e faz push de volta. O time vê a mudança no workspace sem que ninguém precise exportar nada.
- Pipeline de CI: Um job de build clona o repositório com um token de escopo limitado e com expiração, roda a suíte de testes e nunca precisa de uma conta humana nem de uma credencial pessoal.
- Time que mantém o código fora de hospedagem pública: Mantém os repositórios privados ao workspace e continua usando Git comum, em vez de abrir mão das ferramentas de sempre em troca de privacidade.
Perguntas frequentes
O que é o GitNest?
O GitNest é a hospedagem Git nativa do osFoundry. Ele dá a todo repositório do seu workspace um remote Git de verdade, no qual você faz clone e push por HTTPS com qualquer cliente Git padrão.
O GitNest substitui o GitHub?
Não, e essa não é a intenção. O GitHub continua sendo o lugar da hospedagem pública de código aberto e da comunidade em torno dela. O GitNest é onde ficam os repositórios do seu próprio workspace, para que você trabalhe neles localmente e no osFoundry sem ficar movendo código entre dois sistemas.
Posso usar meus comandos Git de sempre?
Sim. O GitNest fala o protocolo smart HTTP padrão do Git usando a implementação de referência do próprio Git, então clone, fetch, branch e push se comportam exatamente como em qualquer outro lugar.
O GitNest suporta SSH?
Hoje não — o GitNest é somente HTTPS. A autenticação é feita com um token de acesso do workspace, e não com uma chave SSH.
Como faço a autenticação?
Crie um token de acesso em Configurações e use-o como senha quando o Git pedir. O nome de usuário não é verificado. Os tokens são exibidos uma única vez, podem receber uma data de expiração e podem ser revogados a qualquer momento.
O que acontece quando eu revogo um token?
Ele para de funcionar na hora, já na requisição seguinte. O que já foi clonado para uma máquina continua nessa máquina — revogar um token encerra o acesso futuro, não apaga uma cópia de trabalho à distância.
Meus repositórios são privados?
Sim. Por padrão, os repositórios são privados ao workspace a que pertencem, e um token só alcança repositórios do workspace ao qual ele pertence.
Um push aparece no workspace?
Sim. Depois que um push é aceito, a branch e seus arquivos são refletidos de volta no workspace, então a IDE web mostra o que você enviou e o Maestro consegue ler.
Posso fazer push para uma versão publicada?
Não, e o push é recusado logo de início, em vez de ser aplicado pela metade. Uma versão publicada é um registro fixo; se um push fosse reescrevê-la, o GitNest o rejeita e informa qual branch, deixando seu repositório intacto.
Posso usar o GitNest a partir do CI?
Sim. Crie um token com expiração, guarde-o no cofre de segredos do seu provedor de CI e faça clone com ele como faria com qualquer outro remote Git.
Preços
Hospedar um repositório faz parte do seu workspace — não há cobrança separada por repositório nem pela quantidade deles. A transferência de dados de clone e push é contabilizada no consumo do seu workspace, como qualquer outro tráfego.
Recursos relacionados