Cada repositório GitHub pode ter ( ou ser ) um site GitHub Pages , que pode ser construído com Jekyll. O GitHub cria o site toda vez que você envia um novo commit.
Existe uma maneira de forçar a atualização do site Github Pages sem enviar um novo commit?
github-pages
Pierre Prinetti
fonte
fonte
Respostas:
Do suporte do GitHub, 07/06/2014:
Editar:
Como Andy apontou nos comentários, você pode enviar um commit vazio com o comando:
Editar 2:
Graças ao GitHub Actions, é bastante fácil acionar uma publicação diária: https://stackoverflow.com/a/61706020/4548500 .
fonte
git log
Se você deseja uma solução rápida de script, aqui está. Faça as tarefas a seguir apenas uma vez e execute o script sempre que quiser reconstruir sua página do GitHub.
1. Crie um token de acesso pessoal para a linha de comando:
Settings > Developer settings > Personal access tokens > Generate new token
.repo
Escopo do .2. Crie o seguinte script:
Crie um arquivo chamado
RebuildPage.sh
e adicione as linhas:Aqui,
yourname
pelo seu nome de usuário GitHub.yourtoken
pelo token de acesso pessoal copiado.yourrepo
pelo nome do seu repositório.3. Execute o script:
Se você usa o Windows 10:
#!/bin/bash
) do script e salve o script comoRebuildPage.bat
. (ou seja, substitua.sh
por.bat
no nome do arquivo de script)Alternativa ao ponto acima: Para obter o recurso de clique duplo para executar o
.sh
arquivo:bash.exe
como o programa padrão para.sh
arquivos.Abra
regedit.exe
e editeHKEY_CLASSES_ROOT\Applications\bash.exe\shell\open\command
. Defina o(Default)
valor para:Agora, clique duas vezes no script quando desejar reconstruir sua página GitHub. Feito!
Se você usa Linux / Mac, executar o script é o mesmo que executar outros scripts. Feito!
Notas adicionais para a solução:
Esta solução utiliza uma API do GitHub REST API v3. Aqui está a documentação oficial da API.
fonte
Eu tive esse problema por um tempo, e empurrar para o branch master não mudou nada
myapp.github.io
, por dois motivos:1 - Construir
Não importa quantas vezes eu tentei forçar meu trabalho no master, o build não iniciaria. Eu encontrei uma solução alternativa ao modificar meu arquivo no editor online do Github (abra seu index.html e edite-o no site do Github, em seguida, confirme)
2 - Problemas de cache
Mesmo depois de uma construção bem-sucedida, eu ainda veria exatamente a mesma página
myapp.github.io
e recarregar com dificuldadeCtrl + Shift + R
não resolveria. Em vez disso, se estiver usando o Chrome, inspecione sua página, vá até aApplication
guia, selecione "Limpar armazenamento" no menu à esquerda e clique em "Limpar dados do site" na parte inferior do menu.fonte
Agora que as ações do GitHub estão disponíveis, isso é trivial:
Repo de amostra que faz isso: https://github.com/SUPERCILEX/personal-website/actions
API de páginas: https://developer.github.com/v3/repos/pages/#request-a-page-build
fonte
Mesmo depois de enviar minhas alterações para o repositório GitHub, não consegui ver as alterações hoje. Então eu verifiquei minhas configurações de repositório para mais informações, lá eu pude ver, todas essas vezes a compilação estava falhando e por isso eu não conseguia ver as mudanças.
Você também pode ver uma mensagem como "Seu site está com problemas de construção: Não é possível construir a página. Tente novamente mais tarde."
Então, eu estava verificando meus commits recentes e tentei descobrir o que causa esse problema. No final, consegui resolver o problema.
Havia uma vírgula adicional nas tags (,) e isso causava o problema .
Você não receberá mensagens de erro relevantes se houver algum problema no arquivo .md. Recomendo que você verifique o status da compilação e compare as alterações se estiver enfrentando o mesmo problema.
fonte
O commit vazio não funcionou para mim, mas com base na resposta de @benett, funcionou para mim:
Abra o Postman, crie uma nova solicitação com este URL: https://api.github.com/repos/[user_name]/[repo_name]/pages/builds (substitua pelo seu nome e repo) e selecione o método POST.
Antes de executá-lo, vá para a
headers
guia e adicione uma nova chaveAccept
com o valorapplication/vnd.github.mister-fantastic-preview+json
Agora você pode executá-lo e visitar suas páginas novamente.
fonte
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/repos/pages/#request-a-page-build" }
. Talvez porque meu repo seja privado?Isso é possível a partir da v3 da API do GitHub
, embora esteja atualmente em visualizaçãohttps://developer.github.com/v3/repos/pages/#request-a-page-buildfonte
Solução alternativa
Você pode ter recebido um e-mail do GitHub informando que Jekyll não teve sucesso na construção do seu site quando você o empurrou para o seu
gh-pages
. Se for esse o caso, você pode tentar forçar o push para acionar outro build.Se você usar uma pasta dedicada para o site final, digamos uma
public
pasta, você pode tentar reconstruir sua pasta e adicionar a pasta às suas alterações confirmadas. Depois disso, você precisará dividir esses arquivos em seugh-pages
branch e forçá-los a acionar outra compilação, mesmo que os arquivos não tenham mudado. O resto do código abaixo apenas remove os commits para apublic
pasta por conveniência e remove-os do sistema de arquivos local.Código
Dicas
Se houver alterações não confirmadas que não fazem parte do site final, você pode armazená-las com o seguinte comando.
Em seguida, execute o comando acima para forçar manualmente a compilação do Jekyll e removê-los do stash.
Referências
fonte