Баг 6 из перевода cars-system 07.10. Не сливать без решения человека.
С TEMPLATES_DIR в ответы писался локальный путь
copier пишет в .copier/*.yml → _src_path то, откуда рендерил. С TEMPLATES_DIR=~/projects/templates там оказывался путь на этой машине, и updateproject на любой другой падал. Теперь после рендера ответы, указывающие на локальные чекауты, переписываются на https://git.kotikot.com/templates/<имя>.git. updateproject всегда обновляет из Gitea — изменение шаблона надо запушить до обновления проектов (README).
Проверено: TEMPLATES_DIR=… TEMPLATES_REF=HEAD newproject … --parts backend,caddy --defaults — во всех трёх ответах _src_path = адрес в Gitea.
Подключение существующей репы
Если репа в Gitea уже с коммитами, а в свежем проекте коммитов ещё нет (newproject для кода, который уже лежит в Gitea), раньше не происходило ничего: origin добавлялся, но история репы и отрендеренные файлы жили отдельно. Теперь (adopt) история репы становится локальной (fetch, ветка по умолчанию, upstream), отрендеренное остаётся незакоммиченными правками поверх неё, файлы, которых шаблоны не знают, восстанавливаются как в репе. Дальше — git status / git diff, своё оставить, остальное закоммитить. Если локальные коммиты уже есть — ничего не трогает и говорит, что сливать руками. Без git (init_git: false) при непустой репе делает git init.
Проверено на локальной bare-репе (Gitea не трогал): ветка main...origin/main, README.md изменён шаблоном, Makefile новый, app.py из репы на месте, лог — коммит репы.
Баг 6 из перевода cars-system 07.10. **Не сливать без решения человека.**
## С `TEMPLATES_DIR` в ответы писался локальный путь
copier пишет в `.copier/*.yml` → `_src_path` то, откуда рендерил. С `TEMPLATES_DIR=~/projects/templates` там оказывался путь на этой машине, и `updateproject` на любой другой падал. Теперь после рендера ответы, указывающие на локальные чекауты, переписываются на `https://git.kotikot.com/templates/<имя>.git`. `updateproject` всегда обновляет из Gitea — изменение шаблона надо запушить до обновления проектов (README).
Проверено: `TEMPLATES_DIR=… TEMPLATES_REF=HEAD newproject … --parts backend,caddy --defaults` — во всех трёх ответах `_src_path` = адрес в Gitea.
## Подключение существующей репы
Если репа в Gitea уже с коммитами, а в свежем проекте коммитов ещё нет (`newproject` для кода, который уже лежит в Gitea), раньше не происходило ничего: origin добавлялся, но история репы и отрендеренные файлы жили отдельно. Теперь (`adopt`) история репы становится локальной (`fetch`, ветка по умолчанию, upstream), отрендеренное остаётся незакоммиченными правками поверх неё, файлы, которых шаблоны не знают, восстанавливаются как в репе. Дальше — `git status` / `git diff`, своё оставить, остальное закоммитить. Если локальные коммиты уже есть — ничего не трогает и говорит, что сливать руками. Без git (`init_git: false`) при непустой репе делает `git init`.
Проверено на локальной bare-репе (Gitea не трогал): ветка `main...origin/main`, `README.md` изменён шаблоном, `Makefile` новый, `app.py` из репы на месте, лог — коммит репы.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Баг 6 из перевода cars-system 07.10. Не сливать без решения человека.
С
TEMPLATES_DIRв ответы писался локальный путьcopier пишет в
.copier/*.yml→_src_pathто, откуда рендерил. СTEMPLATES_DIR=~/projects/templatesтам оказывался путь на этой машине, иupdateprojectна любой другой падал. Теперь после рендера ответы, указывающие на локальные чекауты, переписываются наhttps://git.kotikot.com/templates/<имя>.git.updateprojectвсегда обновляет из Gitea — изменение шаблона надо запушить до обновления проектов (README).Проверено:
TEMPLATES_DIR=… TEMPLATES_REF=HEAD newproject … --parts backend,caddy --defaults— во всех трёх ответах_src_path= адрес в Gitea.Подключение существующей репы
Если репа в Gitea уже с коммитами, а в свежем проекте коммитов ещё нет (
newprojectдля кода, который уже лежит в Gitea), раньше не происходило ничего: origin добавлялся, но история репы и отрендеренные файлы жили отдельно. Теперь (adopt) история репы становится локальной (fetch, ветка по умолчанию, upstream), отрендеренное остаётся незакоммиченными правками поверх неё, файлы, которых шаблоны не знают, восстанавливаются как в репе. Дальше —git status/git diff, своё оставить, остальное закоммитить. Если локальные коммиты уже есть — ничего не трогает и говорит, что сливать руками. Без git (init_git: false) при непустой репе делаетgit init.Проверено на локальной bare-репе (Gitea не трогал): ветка
main...origin/main,README.mdизменён шаблоном,Makefileновый,app.pyиз репы на месте, лог — коммит репы.🤖 Generated with Claude Code