Como devo proceder para preparar e carregar um projeto existente para o GitHub?

Concluído

Aqui, vamos abordar as considerações importantes para carregar um projeto para o GitHub.

Porque é que deve carregar para o GitHub?

Há muitas obras que listam as vantagens do GitHub. O objetivo desde módulo não é convencê-lo a aderir ao GitHub, mas podemos resumir alguns dos principais benefícios no contexto de tópicos que terá de ter em atenção ao planear o carregamento.

Controlo de versões

O GitHub só utiliza o Git, o melhor sistema de controlo de versões existente. No entanto, o Git é extremamente sofisticado e possibilita alguns cenários complexos para trabalhar com código com o qual a sua equipa pode não ter experiência. Os ramos e pedidos Pull são essenciais para programadores que utilizam o Git, pelo que é necessário compreender quando e como utilizá-los eficazmente para ser bem-sucedido no GitHub. Em primeiro lugar, a sua equipa deve familiarizar-se com o fluxo do GitHub para acelerar o processo de carregamento.

Manter o seu código na cloud

Muitos códigos de projetos continuam a ser exclusivamente armazenados nos computadores dos programadores. Ao carregar para o GitHub, move o seu código para a plataforma cloud do GitHub a que os membros da equipa podem aceder facilmente em qualquer lugar. Esta mudança oferece uma boa oportunidade para analisar a política da sua equipa para os tipos de ficheiros e dados que mantém no controlo de versões. Como melhor prática, deve presumir que tudo o que envia para o GitHub pode ser comprometido. Assim, não inclua dados confidenciais, como chaves de API, palavras-passe ou outros ficheiros com informações semelhantes.

Nota

O GitHub oferece repositórios públicos e privados, bem como controlos de acesso granulares para diferentes partes de um repositório. Esta opção permite-lhe controlar quem pode ver os seus projetos, bem como as ações que um determinado utilizador pode realizar.

Colaboração

O GitHub oferece um excelente suporte de colaboração em equipa através de funcionalidades como problemas, pedidos Pull e análises de código. No entanto, o fluxo do GitHub pode diferir das práticas às quais a sua equipa está acostumada. Deve ponderar como a sua equipa se irá adaptar ao GitHub e se irá ou não manter processos existentes.

Se o seu projeto for um projeto open source que permite a colaboração de contribuidores externos, o GitHub será a melhor opção para maximizar os benefícios.

Carregar para o GitHub

Considerações sobre o planeamento

A consideração mais importante antes de realizar o seu carregamento para o GitHub é se precisa de manter qualquer coisa para além do estado atual da sua origem. Por exemplo, pode utilizar uma folha de cálculo ou um software de gestão de projetos para monitorizar erros que pretende corrigir. O suporte de migração destes itens varia consoante a plataforma e está disponível para o público a partir de projetos da comunidade. Este módulo não abrange a migração deste tipo de dados.

Processar ficheiros binários atualmente armazenados no seu projeto

Como melhor prática, os repositórios do GitHub devem ser limitados aos ficheiros necessários para criar projetos. Evite o envio de grandes ficheiros binários, como artefactos. Os ficheiros binários como folhas de cálculo e apresentações são mais bem monitorizados em portais que compreendem como os publicar e como controlar as suas versões adequadamente. Se tiver de controlar as versões de grandes ficheiros binários, pondere utilizar a extensão Git LFS (Large File Storage) do Git.

Criar ficheiros importantes do Git, como um ficheiro .gitignore

O Git suporta ficheiros .gitignore para ajudar a aplicar políticas de ficheiros de controlo de versões. Estes ficheiros definem os padrões de pesquisa utilizados para excluir ficheiros e pastas do controlo de código fonte. Este exemplo simples abaixo exclui todas as pastas denominadas Bin ou bin, bem como os seus conteúdos, do controlo de código fonte.

[Bb]in/

Saiba mais sobre como ignorar ficheiros no artigo Ignoring files (Ignorar ficheiros). Veja também a coleção de ficheiros .gitignore de arranque disponível em várias plataformas no repositório gitignore.

Há outros ficheiros frequentemente utilizados em projetos do GitHub para explicar diferentes políticas a consumidores e contribuidores em repositórios. Mesmo que o seu projeto seja privado e restrito a uma audiência limitada, pode continuar a ser útil para descrever estas políticas. Embora nenhum destes ficheiros seja necessário, alguns dos ficheiros comuns são indicados abaixo.

Ficheiro Objetivo
README.md A página de destino do diretório. Esta página é composta quando o diretório é visualizado no GitHub.
LICENSE.md A licença sob a qual o código é fornecido.
CONTRIBUTING.md Explica como os utilizadores devem contribuir para o projeto e define as expetativas de pedidos Pull.
SECURITY.md Explica a política de segurança do projeto e fornece orientações aos utilizadores que pretendem submeter código ou feedback confidencial e relacionado com segurança que não deve ser divulgado publicamente antes de ser abordado.

Saiba mais sobre como configurar o seu projeto para boas contribuições no artigo Setting up your project for healthy contributions (Configurar o seu projeto para boas contribuições).

Carregar o seu projeto para o GitHub

Assim que tiver preparado o seu repositório para o carregamento, crie um repositório no GitHub. Depois de criar o repositório, navegue para o separador Code do seu repositório do GitHub. Esta vista irá fornecer várias formas de carregar o código do seu projeto.

A importação de código para um repositório GitHub.

Recomendamos que utilize o cliente do git ou uma ferramenta compatível com Git para carregar a sua origem. Em alternativa, pode carregar os seus ficheiros manualmente com a ligação Criar um ficheiro novo. Ao longo do processo, irá provavelmente perceber que utilizar um cliente de git é a melhor forma de gerir alterações, ramos e mais.