Skip to main content

Introdução

Antes de mergulhar no desenvolvimento, esperamos que você compreenda os seguintes pontos:
  • Oficialmente, o Overleaf é desenvolvido em um repositório interno, e a Community Edition é publicada em overleaf/overleaf. Um copybot é responsável por sincronizar o código entre os repositórios interno e público.
  • Ayaka-notes/overleaf-pro é uma versão derivada (fork) do Overleaf Community. Esperamos que este projeto seja de longo prazo, por isso, siga as regras antes de contribuir.

Regras de commit

  • Não faça modificações extensas no código existente do Overleaf. Concentre o máximo possível de funcionalidades na pasta services/web/modules. Isso minimizará nosso trabalho ao mesclar e atualizar o código posteriormente.
  • O vibe coding é de fato muito prático, mas pode facilmente bagunçar nosso projeto, tornando-o impossível de manter mais tarde; por isso, use-o com cautela.
  • Não adicione nenhum conteúdo relacionado a traduções durante o desenvolvimento; use as traduções existentes sempre que possível.
  • Evite introduzir variáveis de ambiente, a menos que seja absolutamente necessário. Se forem necessárias, garanta que sejam o mais consistentes possível com as do Overleaf Toolkit ou de docs.overleaf.com.

Regras de branches

Usamos os seguintes branches para o desenvolvimento do overleaf-pro:
  • main: Este branch é usado apenas para a sincronização do código upstream; NÃO faça commit de nenhuma alteração externa. Neste branch, definimos algumas tags como ce-v[X.x.x], que indicam a correspondência com a v[X.x.x] do Overleaf Community Edition oficial. Observação: essa tag é imutável!
  • server-pro: Este é o branch padrão para o desenvolvimento diário.
  • feature-X: Este branch é usado para desenvolver uma funcionalidade específica.
  • release-vX.0.0: Branch específico para lançamentos; faremos alguns hot-fixes antes do lançamento.

Regras de branches do Overleaf Pro

GitHub Action

O GitHub Action é responsável pelo CI/CD automático, que inclui:
  • Atualização noturna do branch main
  • Build da imagem Docker para desenvolvimento
  • Lançamento da imagem Docker

Perguntas e respostas

Primeiro, você precisa baixar a imagem Docker e executar o seguinte comando para inspecionar os labels dessa imagem:
bash
Em seguida, você pode verificar se o commit (b0d05c0) está presente no branch master upstream.
Esse é um comportamento esperado. A versão 6.0.1 é uma pequena versão de patch construída sobre a imagem 6.0.0. As alterações são aplicadas por meio de patches na imagem 6.0.0 existente, em vez de reconstruir a imagem a partir de um novo commit. Por isso, o hash do commit dentro da imagem é idêntico entre 6.0.0 e 6.0.1.Para informações detalhadas, consulte hotfix.
Última modificação em 4 de outubro de 2026