quarto publish gh-pages cannot bootstrap a repository with no gh-pages branch (docs say it creates one)
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- git, github, javascript
Direção de pesquisa
Start at the quarto publish gh-pages command’s resolveDeployment path, which the error trace locates in the bundled quarto.js, and trace how it checks for a remote gh-pages branch. Reproduce with a website project in a subdirectory and an origin that has only main; compare local and CI publishing. Done means first publish creates the branch as documented, or the error explains a working bootstrap procedure.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Checks
- I have searched the existing issues and discussions, and this has not been reported.
- I have tested with the latest stable version of Quarto.
System
Linux (x86_64), Quarto 1.10.19 stable, git 2.x, remote over HTTPS with a credential helper.
Expected
Per https://quarto.org/docs/publishing/github-pages.html ("Source Branch"):
quarto publish gh-pagesautomatically creates a gh-pages branch (locally and on the remote) on its first run if one does not already exist.
Actual
Running exactly that first run locally fails, and says to do the thing that just failed:
$ quarto publish gh-pages --no-prompt --no-browser
ERROR: Unable to publish to GitHub Pages (the remote origin does not have a branch named
"gh-pages". Use first `quarto publish gh-pages` locally to initialize the remote repository
for publishing.)
at resolveDeployment (file:///opt/quarto/bin/quarto.js:173771:13)
Answering the confirmation prompt interactively (printf 'y\n' | quarto publish gh-pages --no-browser) gives the same error. The same error also aborts quarto-dev/quarto-actions/publish@v2 with target: gh-pages, so the documented CI recipe cannot bootstrap a new repository either: the job fails at the publish step and no gh-pages branch is ever created.
Repository shape that may matter
- Git repository root:
/repo, with the Quarto project in a subdirectory:/repo/05_website/_quarto.yml(project.type: website,output-dir: _site,website.site-urlset to the project-page URL). - Branches on
origin:mainonly. Nogh-pages. - No
_publish.ymlanywhere (i.e. genuinely a first run).
So the case is: valid website project, canonical site-url configured, publishing source absent. That is precisely the case the docs say Quarto initialises.
What we did to get unblocked
Created the branch by hand once, with git plumbing so the working tree was untouched:
empty=$(git hash-object -t tree /dev/null)
commit=$(git commit-tree "$empty" -m "Initialize gh-pages branch for Quarto publishing")
git push origin "$commit:refs/heads/gh-pages"
After that, the same quarto publish gh-pages invocation (from CI) renders and deploys normally, GitHub picks the branch up and Pages reports status: built. So the failure is specific to creating the branch, not to the deployment itself.
Two asks
- If branch creation is conditional on something (project at the repository root? a remote helper? an interactive TTY?
_publish.yml?), please document the condition; the current error message points at a step that cannot be performed, because performing it produces the same error. - Otherwise, either create the branch on first run as documented, or replace the message with the three-command manual bootstrap above.
Happy to test a pre-release against this repository shape.
- Linguagem predominante
- JavaScript
- Estrelas
- 6.1k
- Forks
- 478
- Merge médio
- 17h 36min
- PRs com merge (30d)
- 139
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de quarto-dev/quarto-cli
-
enhancement good-first-issue localization
Dificuldade 2/5 1-2 dias Facilidade para iniciantes 76/100
quarto-dev/quarto-cli#15289 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
bug engines-jupyter
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
quarto-dev/quarto-cli#15281 ·
Mantenedores costumam responder em até 1 dia
-
enhancement localization
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
quarto-dev/quarto-cli#15268 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
html maintenance
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
quarto-dev/quarto-cli#15261 ·
Mantenedores costumam responder em até 1 dia
-
enhancement websites
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
quarto-dev/quarto-cli#15255 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de quarto-dev/quarto-cli
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia
-
help wanted Idea 💡 wdio-cli
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
webdriverio/webdriverio#16361 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
clientV2: Application Info header separators show as missing-character boxes without a CJK fontAbertabug new-client
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 88/100
NUWCDIVNPT/stig-manager#2285 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
Fei2411/DeepSeek-Bot#922 · 1 reação ·