Pular para o conteúdo principal

Acesso ao Servidor Git (Forgejo)

O servidor Git corporativo utiliza Forgejo (compatível com GitHub) e é acessível apenas via VPN.

🔗 Informações de Acesso

AtributoValor
URLhttps://engenharia-git.bitio.com.br
AcessoApenas via VPN
EngineForgejo (GitHub-compatible)
SSH Port2223

📋 Pré-requisitos

  1. VPN configurada e conectada
  2. ✅ Arquivo /etc/hosts configurado
  3. ✅ Conta criada no Forgejo

⚙️ Configuração Inicial

1. Configurar /etc/hosts (Obrigatório)

Linux/Ubuntu/macOS:

echo "172.31.11.156 engenharia-git.bitio.com.br" | sudo tee -a /etc/hosts

Windows (como Administrador):

echo 172.31.11.156 engenharia-git.bitio.com.br >> C:\Windows\System32\drivers\etc\hosts

2. Verificar Configuração

# Testar resolução DNS
nslookup engenharia-git.bitio.com.br
# Deve retornar: 172.31.11.156

# Sem VPN (deve falhar)
curl -I https://engenharia-git.bitio.com.br/
# Erro: Connection refused ✅

# Com VPN (deve funcionar)
curl -I https://engenharia-git.bitio.com.br/
# HTTP/2 200 ✅

🌐 Acesso via Navegador

  1. Conectar VPN
  2. Acessar: https://engenharia-git.bitio.com.br
  3. Login com suas credenciais Forgejo
  4. Interface idêntica ao GitHub

🔑 Configuração SSH

Gerar Chave SSH (se não tiver)

ssh-keygen -t ed25519 -C "seu.email@bitio.com.br"

Adicionar Chave no Forgejo

  1. Copiar chave pública:
    cat ~/.ssh/id_ed25519.pub
  2. ForgejoSettingsSSH / GPG Keys
  3. Add Key → Colar chave pública

Configurar SSH Local

# Configurar SSH para usar porta customizada
cat >> ~/.ssh/config << 'EOF'
Host engenharia-git.bitio.com.br
HostName engenharia-git.bitio.com.br
Port 2223
User git
IdentityFile ~/.ssh/id_ed25519
EOF

Testar SSH

# Com VPN conectada
ssh -T git@engenharia-git.bitio.com.br

# Deve retornar:
# Hi username! You've successfully authenticated, but Forgejo does not provide shell access.

📦 Trabalhando com Repositórios

Clone via HTTPS

git clone https://engenharia-git.bitio.com.br/organization/repository.git

Clone via SSH

git clone git@engenharia-git.bitio.com.br:organization/repository.git

Configuração Global Git

# Configurar usuário globalmente
git config --global user.name "Seu Nome"
git config --global user.email "seu.email@bitio.com.br"

# Configurar editor padrão
git config --global core.editor "code --wait" # VS Code
git config --global core.editor "nano" # Nano

🔄 Workflow Típico

Fluxo Básico

# 1. Conectar VPN
sudo openvpn --config arquivo.ovpn

# 2. Clone do projeto
git clone git@engenharia-git.bitio.com.br:bitio/meu-projeto.git
cd meu-projeto

# 3. Criar branch para feature
git checkout -b feature/nova-funcionalidade

# 4. Fazer alterações e commit
git add .
git commit -m "feat: implementar nova funcionalidade"

# 5. Push da branch
git push origin feature/nova-funcionalidade

# 6. Criar Pull Request no Forgejo
# Via interface web: https://engenharia-git.bitio.com.br

Sincronizar com Main

# Atualizar main local
git checkout main
git pull origin main

# Fazer rebase da sua branch
git checkout feature/minha-branch
git rebase main

# Push forçado (após rebase)
git push --force-with-lease origin feature/minha-branch

📊 Recursos Disponíveis

Interface Web

  • Repositórios - Navegação de código
  • Issues - Rastreamento de bugs/tarefas
  • Pull Requests - Code review
  • Wiki - Documentação interna
  • Releases - Gerenciamento de versões
  • Actions - CI/CD (se configurado)

Integração com IDEs

# VS Code - extensões recomendadas
code --install-extension ms-vscode.vscode-git
code --install-extension github.vscode-pull-request-github

🔍 Solução de Problemas

Git clone falha

# Verificar VPN
ip addr show tun0

# Verificar hosts
grep "engenharia-git" /etc/hosts

# Testar conectividade
curl -I https://engenharia-git.bitio.com.br/

SSH não conecta

# Verificar configuração SSH
ssh -vT git@engenharia-git.bitio.com.br

# Verificar chave SSH
ssh-add -l

# Recarregar chave se necessário
ssh-add ~/.ssh/id_ed25519

"Permission denied" no push

# Verificar se é membro do repositório
# Solicitar acesso ao admin

# Verificar URL do remote
git remote -v

# Se necessário, alterar para SSH
git remote set-url origin git@engenharia-git.bitio.com.br:org/repo.git

Produtividade

Mantenha a VPN sempre conectada durante desenvolvimento. Configure aliases Git para comandos frequentes e use SSH para melhor performance.

Segurança

Nunca commite credenciais, chaves API ou senhas. Use variáveis de ambiente e arquivos .env (incluídos no .gitignore).