



Настройка синхронизации с GitHub
Перейдите в настройки разработчика, чтобы создать OAuth-приложение GitHub, и скопируйте вашиCLIENT_ID и SECRET.
Примечание: при создании OAuth App укажите ${OVERLEAF_SITE_URL}/user/github-sync/oauth2/callback в поле Authorization callback URL. Ayakaleaf Pro формирует тот же адрес из OVERLEAF_SITE_URL, поэтому задавать его в config/variables.env не нужно.
Затем добавьте следующие настройки в файлы переменных окружения Overleaf.
GITHUB_SYNC_PROXY_URL=http://10.0.0.1:10808. Убедитесь, что использование прокси соответствует местному законодательству и нормативным актам.
GitHub Enterprise
github.com, и перечисленные ниже переменные в них не действуют.github.com. Чтобы использовать GitHub Enterprise Server (самостоятельно размещённый) или GitHub Enterprise Cloud с размещением данных в выбранном регионе (GHE.com), задайте в GITHUB_SYNC_URL веб-адрес вашего экземпляра — тот, по которому вы открываете репозитории в браузере.
GITHUB_SYNC_URL так же, как это делает GitHub CLI:
NODE_EXTRA_CA_CERTS, например NODE_EXTRA_CA_CERTS=/var/lib/overleaf/certs/github-ca.pem.GITHUB_SYNC_URL на другой экземпляр, попросите пользователей отвязать свои учётные записи GitHub и проекты.Кто может привязывать и синхронизировать
Как и в Overleaf Cloud, привязать проект к репозиторию GitHub может только владелец проекта. После привязки синхронизировать проект может любой соавтор с правами на редактирование.- Overleaf взаимодействует с GitHub от имени учётной записи GitHub пользователя, выполняющего синхронизацию, поэтому каждый соавтор, который синхронизирует проект, привязывает собственную учётную запись GitHub и должен иметь право на push в ветку по умолчанию репозитория.
- Соавторы с правами только на просмотр не могут использовать синхронизацию с GitHub для этого проекта.
Q&A
Как привязать проект к GitHub и синхронизировать его?
Как привязать проект к GitHub и синхронизировать его?
overleaf-YYYY-MM-DD-HHMMSS. Если при этом слиянии возникает конфликт, слейте эту ветку в GitHub самостоятельно, а затем нажмите I have manually merged. Continue.Можно ли выполнять force push в ветку по умолчанию?
Можно ли выполнять force push в ветку по умолчанию?
Можно ли переименовать ветку по умолчанию привязанного проекта?
Можно ли переименовать ветку по умолчанию привязанного проекта?
Синхронизация с GitHub показывает «Something wrong with GitHub request»
Синхронизация с GitHub показывает «Something wrong with GitHub request»
bin/logs web, чтобы увидеть полную ошибку. Если серверу нужен прокси для доступа к GitHub, задайте GITHUB_SYNC_PROXY_URL.Нужно ли отключать «Expire user access tokens» в GitHub OAuth App?
Нужно ли отключать «Expire user access tokens» в GitHub OAuth App?
Должен ли мой экземпляр быть доступен из интернета?
Должен ли мой экземпляр быть доступен из интернета?
GITHUB_SYNC_PROXY_URL. GitHub никогда не обращается к вашему экземпляру: проект синхронизируется только тогда, когда пользователь синхронизирует его в редакторе.Привязка учётной записи GitHub завершается ошибкой или возвращает меня назад без привязки
Привязка учётной записи GitHub завершается ошибкой или возвращает меня назад без привязки
- Открывайте Overleaf точно по адресу, заданному в
OVERLEAF_SITE_URL. GitHub возвращает вас на${OVERLEAF_SITE_URL}/user/github-sync/oauth2/callback, а ваш вход существует только на том адресе, с которого вы начали, поэтому другой хост, IP-адрес или порт приводит на страницу входа или к сообщению «Restricted, sorry you don’t have permission to load this page». - Authorization callback URL в OAuth App должен быть
${OVERLEAF_SITE_URL}/user/github-sync/oauth2/callbackс той же схемой, хостом и портом. - Страница ошибки с
Failed to obtain access token from Git serverозначает, что GitHub не вернул токен: проверьтеGITHUB_SYNC_CLIENT_IDиGITHUB_SYNC_CLIENT_SECRET, а также доступность GitHub с сервера. Выполнитеbin/logs web, чтобы увидеть полную ошибку.
config/variables.env выполните bin/up, чтобы пересоздать контейнеры.Импорт репозитория завершается ошибкой «EmptyZipFileError: empty_zip_file» или «unzip failed»
Импорт репозитория завершается ошибкой «EmptyZipFileError: empty_zip_file» или «unzip failed»
- Она содержит файлы проекта, а не только файлы, которые Overleaf пропускает при импорте: dot-файлы, такие как
.gitignoreи.gitmodules(.latexmkrcсохраняется), и файлы сборки, такие как*.aux,*.log,*.bbl,*.synctex.gz,*.docи*.docx. - Файлы находятся не только внутри подмодулей Git. В архиве GitHub подмодули остаются пустыми папками.
- Нужные вам файлы находятся в ветке по умолчанию, а не в другой ветке. Импорт всегда использует ветку по умолчанию.

