Вступ
Перш ніж заглиблюватися в розробку, просимо вас ознайомитися з таким:- Офіційно Overleaf розробляється у внутрішньому репозиторії, а версія Community Edition публікується в overleaf/overleaf. За синхронізацію коду між внутрішнім і публічним репозиторіями відповідає copybot.
- Ayaka-notes/overleaf-pro — це форк Overleaf Community. Ми хочемо, щоб цей проєкт був довготривалим, тому, будь ласка, дотримуйтеся правил, перш ніж робити внесок.
Правила комітів
- Будь ласка, не вносьте масштабних змін в наявний код Overleaf. Зосереджуйте якомога більше функціональності в теці
services/web/modules. Це мінімізує наші зусилля під час подальшого злиття й оновлення коду. - Vibe coding — справді дуже простий спосіб, але він легко може внести безлад у проєкт і згодом зробити його непідтримуваним, тож використовуйте його обережно.
- Будь ласка, не додавайте під час розробки жодного вмісту, пов’язаного з перекладами; за можливості використовуйте наявні переклади.
- Уникайте додавання змінних середовища без крайньої потреби. Якщо вони все ж потрібні, переконайтеся, що вони максимально узгоджені зі змінними в Overleaf Toolkit або на docs.overleaf.com.
Правила гілок
Для розробки overleaf-pro ми використовуємо такі гілки:main: ця гілка використовується лише для синхронізації коду з upstream, будь ласка, НЕ комітьте до неї жодних сторонніх змін. У цій гілці ми ставимо теги на кшталтce-v[X.x.x], які означають, що стан відповідаєv[X.x.x]в офіційній Overleaf Community Edition. Примітка: цей тег незмінний!server-pro: гілка за замовчуванням для щоденної розробки.feature-X: гілка для розробки конкретної функції.release-vX.0.0: гілка, призначена для релізу; перед релізом ми вносимо в неї гарячі виправлення.

Правила гілок для Overleaf Pro
GitHub Action
GitHub Action відповідає за автоматичний CI/CD, який включає:- Щонічне оновлення гілки main
- Збирання Docker-образу для розробки
- Випуск Docker-образу
Питання та відповіді
Як знайти хеш коміту для Overleaf Community Edition X.0.0?
Як знайти хеш коміту для Overleaf Community Edition X.0.0?
Насамперед потрібно завантажити Docker-образ і виконати таку команду, щоб переглянути мітки (labels) цього образу:Потім можна перевірити, чи присутній коміт (b0d05c0) у гілці master в upstream.
bash
Чому хеш коміту однаковий в образах CE 6.0.0 і 6.0.1?
Чому хеш коміту однаковий в образах CE 6.0.0 і 6.0.1?
Це очікувана поведінка. Реліз 6.0.1 — це невеликий патч-реліз, зібраний на основі образу 6.0.0. Зміни застосовуються шляхом патчування наявного образу 6.0.0, а не повторного збирання образу з нового коміту. Тому хеш коміту всередині образу однаковий для 6.0.0 і 6.0.1.Докладніше див. hotfix.

