Sobre o GitHub Pages
O GitHub Pages é um serviço de hospedagem de site estático que usa arquivos HTML, CSS e JavaScript diretamente de um repositório no GitHub e, como opção, executa os arquivos por meio de um processo e publica um site. Veja exemplos de sites do GitHub Pages na coleção de exemplos do GitHub Pages.
É possível hospedar seu site no domínio github.io
do GitHub ou em um domínio personalizado próprio. Para saber mais, confira Configurar um domínio personalizado para o site do GitHub Pages.
Você pode criar sites de GitHub Pages disponíveis publicamente na Internet. As organizações que usam o GitHub Enterprise Cloud também podem publicar sites de modo privado gerenciando o controle de acesso para o site. Para obter mais informações, confira "Alterando a visibilidade de seu site do GitHub Pages " na documentação do GitHub Enterprise Cloud.
Para começar, confira Criar um site do GitHub Pages.
Os proprietários da organização podem desativar a publicação de sites GitHub Pages nos repositórios da organização. Para saber mais, confira Gerenciar a publicação dos sites do GitHub Pages para a sua organização.
Tipos de site do GitHub Pages
Há três tipos de site do GitHub Pages: projeto, usuário e organização. Os sites de projeto são conectados a um projeto específico hospedado no GitHub, como uma biblioteca do JavaScript ou um conjunto de receitas. Os sites de usuário e organização estão conectados a uma conta específica em GitHub.com.
Para publicar um site de usuário, você precisa criar um repositório de propriedade da sua conta pessoal chamado <username>.github.io
. Para publicar um site da organização, você precisa criar um repositório de propriedade de uma organização chamado <organization>.github.io
. A menos que você esteja usando um domínio personalizado, os sites de usuário e organização ficam disponíveis em http(s)://<username>.github.io
ou http(s)://<organization>.github.io
.
Os arquivos de origem de um site de projeto são armazenados no mesmo repositório que o respectivo projeto. A menos que você esteja usando um domínio personalizado, os sites do projeto ficam disponíveis em http(s)://<username>.github.io/<repository>
ou http(s)://<organization>.github.io/<repository>
.
Para obter mais informações sobre como os domínios personalizados afetam a URL do seu site, confira Sobre domínios personalizados e GitHub Pages.
Você só pode criar um site de usuário ou organização para cada conta em GitHub. Os sites de projeto, sejam eles de uma organização ou de uma conta pessoal, são ilimitados.
Publicar fontes para sites do GitHub Pages
Warning
Sites criados com GitHub Pages estão disponíveis publicamente na Internet, mesmo que o repositório do site seja privado (se o seu plano ou organização permitir). Se você tiver dados confidenciais no repositório do seu site, poderá removê-los antes de publicá-los. Para obter mais informações, confira "Sobre repositórios".
Você pode publicar seu site quando as alterações são enviadas por push para um branch específico ou você pode escrever um fluxo de trabalho do GitHub Actions para publicar seu site.
Se você não precisar de nenhum controle sobre o processo de build do seu site, recomendamos que você publique seu site quando as alterações forem enviadas por push para um branch específico. Você pode especificar qual branch e pasta usar como fonte de publicação. O branch de origem pode ser qualquer branch em seu repositório, e a pasta de origem pode ser a raiz do repositório (/
) no branch de origem ou uma pasta /docs
no branch de origem. Sempre que as alterações forem enviadas por push para o branch de origem, as alterações na pasta de origem serão publicadas em seu site do GitHub Pages.
Se você deseja usar um processo de build diferente do Jekyll ou não quer que um branch dedicado mantenha seus arquivos estáticos compilados, recomendamos que você escreva um fluxo de trabalho do GitHub Actions para publicar seu site. GitHub oferece modelos de fluxo de trabalho iniciais para cenários comuns de publicação para ajudar a escrever seu fluxo de trabalho.
Para saber mais, confira Configurar uma fonte de publicação para o site do GitHub Pages.
Geradores de site estáticos
O GitHub Pages publica qualquer arquivo estático do qual você faz push no repositório. É possível criar seus próprios arquivos estáticos ou usar um gerador de site estático para que ele crie o site para você. Também pode personalizar seu próprio processo de criação localmente ou em outro servidor.
Se você usar um processo de build ou um gerador de site estático diferente do Jekyll, poderá escrever um GitHub Actions para criar e publicar seu site. O GitHub fornece modelos de fluxo de trabalho para vários geradores de site estático. Para saber mais, confira Configurar uma fonte de publicação para o site do GitHub Pages.
Se você publicar seu site de um branch de origem, GitHub Pages usará o Jekyll para criar seu site por padrão. Se você quiser usar um gerador de site estático diferente do Jekyll, recomendamos que você escreva um GitHub Actions para criar e publicar seu site. Caso contrário, desabilite o processo de build do Jekyll criando um arquivo vazio chamado .nojekyll
na raiz da fonte de publicação e siga as instruções do gerador de site estático para compilar seu site localmente.
O GitHub Pages não aceita linguagens de servidor como PHP, Ruby ou Python.
Limites para o uso de GitHub Pages
Os sites do GitHub Pages criados após 15 de junho de 2016 e que usam os domínios github.io
são disponibilizados via HTTPS. Se você criou seu site ante de 15 de junho de 2016, é possível habilitar o suporte ao HTTPS para tráfego no seu site. Para saber mais, confira Proteger o site GitHub Pages com HTTPS.
Usos proibidos
O GitHub Pages não foi projetado nem tem permissão para ser usado como um serviço de hospedagem gratuita na Web para administrar sua empresa online, seu site de comércio eletrônico ou qualquer outro site desenvolvido principalmente para facilitar transações comerciais ou fornecer SaaS (software como serviço) comercial. Os sites do GitHub Pages não devem ser usados para transações confidenciais, como envio de senhas ou números de cartão de crédito.
Além disso, seu uso do GitHub Pages está sujeito aos Termos de Serviço do GitHub, incluindo as restrições relativas a esquemas do tipo "enriqueça rápido", conteúdo sexualmente obsceno e atividade ou conteúdo violento ou ameaçador.
Exercícios educacionais
O uso do GitHub Pages para criar uma cópia de um site existente como um exercício de aprendizagem não é proibido. No entanto, além de cumprir os Termos de Serviço do GitHub, você deve escrever o código, o site não deve coletar quaisquer dados do usuário e você deve incluir um aviso de isenção de responsabilidade de destaque no site indicando que o projeto não está associado ao original e foi criado apenas para fins educacionais.
Limites de uso
Os sites do GitHub Pages estão sujeitos ao seguintes limites de uso:
-
Os repositórios de origem do GitHub Pages têm um limite recomendado de 1 GB. Para obter mais informações, confira Sobre arquivos grandes no GitHub
-
Os sites do GitHub Pages publicados não podem ter mais de 1 GB.
-
As implantações de GitHub Pages terão tempo limite se levarem mais de 10 minutos.
-
Os sites do GitHub Pages têm um limite de largura de banda flexível de 100 GB por mês.
-
Os sites do GitHub Pages têm um limite flexível de dez builds por hora. Esse limite não se aplicará se você criar e publicar seu site com um fluxo de trabalho personalizado do GitHub Actions.
-
Para fornecer qualidade de serviço consistente para todos os sites GitHub Pages, limites de taxa podem ser aplicados. Esses limites de taxa não se destinam a interferir nos usos legítimos de GitHub Pages. Se a sua solicitação disparar a limitação de taxa, você receberá uma resposta apropriada com um código de status HTTP de
429
, juntamente com um corpo HTML informativo.
Se o seu site exceder essas cotas de uso, talvez não possamos atendê-lo, ou você poderá receber um e-mail educado do Suporte do GitHub sugerindo estratégias para reduzir o impacto do seu site em nossos servidores, incluindo a colocação de uma rede de distribuição de conteúdo (CDN) de terceiros na frente do seu site, o uso de outros recursos do GitHub, como lançamentos, ou a mudança para um serviço de hospedagem diferente que possa atender melhor às suas necessidades.
Tipos de MIME no GitHub Pages
Um tipo de MIME é um header que um servidor envia a um navegador, fornecendo informações sobre a natureza e o formato dos arquivos que o navegador solicitou. O GitHub Pages aceita mais de 750 tipos de MIME entre milhares de extensões de arquivo. A lista de tipos MIME compatíveis é gerada com base no projeto mime-db.
Embora não seja possível especificar tipos de MIME personalizados por arquivo ou repositório, você pode adicionar ou modificar tipos de MIME para uso no GitHub Pages. Para obter mais informações, confira as diretrizes de contribuição do mime-db.
Coleta de dados
Quando um site de GitHub Pages é acessado, o endereço IP do visitante é registrado e armazenado para fins de segurança, independentemente se o visitante efetuou o login em GitHub ou não. Para obter mais informações sobre as práticas de segurança do GitHub, confira Política de Privacidade do GitHub.
Leitura adicional
- GitHub Pages no GitHub Skills
- Pontos de extremidade da API REST para repositórios