GitHub é uma plataforma de hospedagem de código-fonte e arquivos com controle de versão usando o Git. É como uma plataforma social colaborativa, onde programadores e empresas colocam seus projetos para o desenvolvimento do código.
Por que precisamos do GitHub?
Entenda que o mundo da tecnologia de informação está cada vez mais concorrido, novas tecnologias vêm surgindo aos montes e em uma velocidade impressionante.
Pessoas, para desenvolverem aplicativos e programas capazes de lidar e controlar essas tecnologias, estão sendo cada vez mais procuradas.
Com toda esta concorrência e diversidade, como fazer para se destacar neste meio?
Em algumas profissões, é comum os profissionais terem um portfólio para divulgação de seu trabalho.
Ilustradores podem expor seus desenhos no DeviantArt, músicos e cantores divulgam suas canções no SoundCloud ou YouTube.
Mas e os programadores? Onde eles poderiam exibir seu programas e códigos? É aí onde entra o GitHub!
Porém, não tem como entendermos sobre GitHub sem falarmos de Git, por isso, para entender de onde surgiu o Git, de GitHub, vamos falar brevemente sobre o assunto.
O que é Git
O Git é um repositório de controle de versão de arquivos, utilizado para controlar versões de códigos-fonte e desenvolvimento colaborativo.
Foi criado em 2005 pelo Linus Torvalds, criador do kernel do Linux, para hospedar o código-fonte do Linux e permitir a colaboração em seu desenvolvimento, já que a antiga empresa que hospedava seu código, a BitKeeper, queria passar a cobrar pelos seu serviços.
Para você entender melhor sobre a importância do Git, na segunda edição da GeekStream, Felipe Fialho confidenciou que dominar os comandos do Git é uma das coisas mais importantes na carreira de desenvolvedor.
Como instalar o Git
O git pode ser instalado em plataformas Linux/Debian por meio do comando:
sudo apt-get install git
Em outras plataformas como Windows ou Mac, você pode baixar por meio destes links:
Como transformar o VSCode como editor padrão do Git
A importância do GitHub
Já o GitHub, lançado em 2008, é uma versão para web do Git.
Os projetos no GitHub são em sua grande maioria open source, mas é possível tornar seu código código privado, disponível somente para algumas pessoas ou criando times.
O GitHub já se tornou um dos, senão o maior armazém de códigos na nuvem.
Git, SVN e CVS — comparação dos principais VCS
Para que serve o Github?
Nunca se esqueça: Git e GitHub são coisas diferentes.
Você pode ter o Git para controle de versão somente em seu hd.
Já o GitHub serve caso você queira compartilhar seu código ou colocá-lo na nuvem.
O GitHub possui todas as funcionalidades do Git, e conta com várias outras funcionalidades extras, listadas a seguir:
- Documentação;
- Rastreamento de problemas;
- Wikis;
- Pull requests com comentário e revisão de código;
- Histórico de commits;
- Notificações por email e emojis;
- Arquivos do Photoshop podem ser vistos e comparados com versões anteriores;
- GitHub Pages: pequenos websites podem ser feitos.
Esta última funcionalidade que iremos explorar para a construção do seu portfólio, mais para a frente.
Como usar o GitHub
Vamos ao nosso GitHub tutorial sobre como utilizar o GitHub com os principais passos na ferramenta.
Antes, você precisa criar sua conta pessoal ou uma conta de equipe na página oficial do GitHub.
É totalmente gratuito para repositórios pessoais e para times, como alguns planos pagos mais avançados para times e empresas.
Depois de criar sua conta, utilize o Hello World Guide da plataforma para saber como criar o seu primeiro repositório, fazer um branch ou abrir um pull request.
O que é um repositório
Um repositório é um espaço em que todos os arquivos de um projeto específico são armazenados.
Cada projeto tem seu próprio repositório e você pode acessá-lo com um URL exclusivo.
O que é um fork
“Forking” é quando você cria um novo projeto baseado em outro projeto que já existe, como a bifurcação de um caminho.
Esse é um recurso que incentiva amplamente o desenvolvimento de programas e projetos entre a comunidade ou entre equipes, de forma geral.
Digamos que, ao você encontrar um projeto no GitHub com o qual gostaria de contribuir, poderá dividir o repositório, fazer as alterações desejadas e liberar o projeto revisado como um novo repositório.
Se o repositório original que você criou para criar seu novo projeto for atualizado, você poderá facilmente adicionar essas atualizações ao seu fork atual.
Pull Request: o que é?
Imagine que você bifurcou (fez um fork) um repositório, fez uma boa revisão no projeto e deseja que ele seja reconhecido pelos desenvolvedores originais.
Você pode fazer isso criando uma solicitação de recebimento, o famoso Pull Request.
Os autores do repositório original podem ver seu trabalho e, em seguida, optar por aceitá-lo ou não no projeto oficial.
Sempre que você faz um pull request, o GitHub fornece um meio perfeito para você e o mantenedor do projeto principal se comunicarem entre si.
GitHub também é uma rede social
O GitHub também permite que os projetos cresçam de forma exponencial com o uso social da ferramenta.
Cada usuário no GitHub tem seu próprio perfil como em qualquer rede social, ideal para mostrar seus trabalhos e contribuições em outros projetos.
As revisões do projeto podem ser discutidas publicamente, favorecendo o debate público e compartilhamento de conhecimento.
O GitHub favorece o networking entre desenvolvedores e pode alavancar a sua carreira. Nada chama mais a atenção de um recrutador que um GitHub popular e ativo com a comunidade.
GitHub Pages: montando seu portfólio de códigos
Além de ser um repositório de códigos e rede social, o GitHub ainda oferece a possibilidade de hospedagem de mini-sites estáticos, quantos você quiser!
Isso é uma ótima maneira para os desenvolvedores criarem e divulgarem seus códigos diretamente.
Há duas maneiras de construir suas páginas no GitHub: com o GitHub Theme Chooser, ou escrevendo o código do zero.
Antes de começar, é preciso preparar seu GitHub para hospedar seu site. Aqui vai um passo a passo resumido para isso:
- Crie um novo repositório chamado username.github.io, trocando o username pelo seu nome de usuário no GitHub. Este será o repositório do seu site e o GitHub automaticamente o reconhecerá como a sua home page
- Crie o arquivo index.html com o que você quiser que apareça na sua página. Um “Hello world” para teste é suficiente
- Faça um add, commit e um push para visualizar as mudanças
Você também pode baixar templates para seu portfólio.
Há também a opção do GitHub Résumé, que gera um currículo a partir das informações do seu GitHub.
Um resumo com as linguagens que utiliza, projetos que participa e seus repositórios mais populares são organizados automaticamente.
O que colocar no GitHub?
Depois da sua página pronta, chega a hora de colocar seus projetos para o acesso de quem estiver interessado. E aí vem a dúvida: o que colocar no portfólio?
Resumindo em uma palavra: TUDO!
Aquele seu projeto pessoal ou da faculdade que você acha que não serve para nada, pode conter algum conceito ou técnica de programação que alguma empresa procura.
Fez um curso complementar de programação onde teve que desenvolver algum projeto? Coloque-o no GitHub. Tem um projeto pessoal sendo desenvolvido, coloque-o também.
Além do seu código ficar visível para o mundo, pessoas ainda podem ajudá-lo a desenvolvê-lo.
Se você já é programador e desenvolve para uma empresa, muito provavelmente não poderá divulgar seu código. Neste caso crie projetos simples com a tecnologia e metodologia que está usando e coloque no GitHub, descrevendo tudo o que fez.
Como enviar um projeto para o GitHub
Confira este vídeo tutorial sobre como enviar um projeto para o Github sem enrolação:
O README do GitHub
Um elemento importante para os seus projetos mas que nem sempre recebe a devida atenção é o arquivo README.
O README é a primeira impressão do seu trabalho. Sempre tenha um na raiz do projeto.
Um bom README é aquele que contém uma boa descrição do objetivo, onde e como usar, lista de funcionalidades, dependências para funcionar. Exemplos de uso será um plus.
Lembre-se que o README é para ser um resumo, não uma documentação do projeto. Para a documentação, você pode utilizar a Wiki do próprio GitHub.
Uso de licenças
Não esqueça de definir uma licença para o seu projeto. Você pode perder oportunidades caso não tenha uma licença definida. O site Choose a License pode ajudá-lo a definir qual licença adotar.
Para aplicar uma licença ao seu projeto basta criar um arquivo com o nome LICENSE e colar exatamente o conteúdo da licença nele. Altere somente se a licença tiver espaços para serem preenchidos com seu dados.
O GitHub automaticamente identificará a licença e adicionará um pequeno ícone dela no topo do seu projeto. Caso isso não ocorra, revise o arquivo.
Como o recrutador irá avaliar seu portfólio?
É difícil afirmar com certeza como o recrutador irá avaliar seu portfólio, pois cada empresa possui um processo de seleção diferente.
Mesmo assim, vamos falar aqui de algumas possibilidades e métodos de avaliação pelo GitHub.
A primeira delas é olhando diretamente a página do seu portfólio.
É importante produzir uma página bem elabora mesmo que você não seja um desenvolvedor front-end, pois isso irá mostrar um cuidado com a entrega do seu trabalho. Se achar melhor, use um dos vários templates disponíveis.
Apesar de ser uma opção, ter uma home page no GitHub não é extremamente necessário para a divulgação dos seu portfólio. Um link para o seu repositório já é o suficiente.
Bons desenvolvedores têm bons projetos
Não é comum recrutadores analisarem todo o GitHub de um candidato, mas algum projeto específico pode chamar atenção.
Você também pode mostrar um projeto específico que possa ser relevante para uma determinada vaga.
Repositórios para testes
Outra maneira de se usar o GitHub em um processo seletivo é por meio de testes.
O recrutador cria um repositório, pede que o candidato faça um fork deste repositório e depois dê um commit com alguma modificação, que será a resolução do teste.
Este tipo de teste serve tanto para avaliar a capacidade de programação do candidato quanto sua familiaridade com o Git. É o tipo de avaliação mais comum.
Depois de todas essas dicas, dificilmente você passará despercebido no mundo do desenvolvimento e ao olhos dos recrutadores.
Vagas para desenvolvedores nas empresas mais desejadas, confira agora!