Skip to main content

Sobre o GitHub Pages

É possível usar o GitHub Pages para hospedar um site sobre você, sua organização ou seu projeto diretamente por meio de um repositório em GitHub.com.

Quem pode usar esse recurso?

O GitHub Pages está disponível em repositórios públicos com o GitHub Free e o GitHub Free para organizações, e em repositórios públicos e privados com o GitHub Pro, o GitHub Team, o GitHub Enterprise Cloud e o GitHub Enterprise Server. Para mais informações, confira "Planos do GitHub".

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 Enterprise Cloud 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 obter mais informações, confira "Configurar um domínio personalizado para o site do GitHub Pages".

A menos que a empresa use Enterprise Managed Users, você pode publicar sites de maneira pública ou privada gerenciando o controle de acesso ao site. Para obter mais informações, confira "Alterando a visibilidade de seu site do GitHub Pages ".

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 obter mais informações, 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 Enterprise Cloud, 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>.

Se você publicar seu site no modo privado, a URL do site será diferente. Para obter mais informações, confira "Alterar a visibilidade do site do GitHub Pages".

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 Enterprise Cloud. 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

Aviso: a menos que sua empresa use Enterprise Managed Users, sites de GitHub Pages estarão disponíveis publicamente na Internet por padrão, mesmo que o repositório para o site seja privado ou interno. Você pode publicar um site de forma privada gerenciando o controle de acesso para o site. Caso contrário, se você tiver dados confidenciais no repositório do seu site, talvez queira remover os dados antes da publicação. Para obter mais informações, confira "Sobre repositórios" e "Alterar a visibilidade do site do GitHub Pages."

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 Enterprise Cloud oferece fluxos de trabalho iniciais para cenários comuns de publicação para ajudar vocâ a escrever seu fluxo de trabalho.

Para obter mais informações, confira "Configurar uma fonte de publicação para o site do GitHub Pages".

Limitações do Enterprise Managed Users

Se você for um conta de usuário gerenciada, o seu uso do GitHub Pages será limitado.

  • Os sites do GitHub Pages só podem ser publicados por meio de repositórios pertencentes a organizações.
  • Os sites do GitHub Pages são sempre publicados de forma privada e você não pode alterar essa visibilidade. Para obter mais informações, confira "Alterar a visibilidade do site do GitHub Pages".
  • Você não pode criar um site da organização (um site publicado de um repositório chamado <organization>.github.io)

Para mais informações sobre Enterprise Managed Users, confira "Sobre os Enterprise Managed Users".

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. GitHub Enterprise Cloud oferece fluxos de trabalho iniciais para vários geradores de site estático. Para obter mais informações, 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 obter mais informações, 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 10 builds por hora. Esse limite não se aplica se você cria e publica seu site com um fluxo de trabalho personalizado de 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.

Leitura adicional