
Compartilhar:
Sou desenvolvedor de JavaScript e instrutor de desenvolvimento na Vonage. Ao longo dos anos, tenho me interessado muito por modelos, Node.js, aplicativos web progressivos e estratégias “offline-first”, mas o que sempre adorei de verdade é uma API útil e bem documentada. Meu objetivo é tornar a sua experiência com nossas APIs a melhor possível.
Hacktoberfest: Como usar o GitHub Desktop
Tempo de leitura: 5 minutos
Deve ter sido uma revelação quando foram criados os primeiros diretórios de projetos de código aberto que ofereciam ferramentas de uso gratuito e buscavam contribuições. Hoje, isso é tão comum no mundo da tecnologia que mal paramos para explicar o que é o GitHub. Isso pode ser um problema se este for seu primeiro Hacktoberfest, caso você seja novo no mundo do código aberto ou na programação em geral.
O GitHub é um serviço de hospedagem para códigos controlados por versões usando o Git. Ele facilita o compartilhamento de código entre desenvolvedores e o trabalho colaborativo em projetos, oferecendo um espaço publicamente acessível para um repositório. Existem muitos outros serviços de hospedagem para repositórios Git e para aqueles que utilizam outros sistemas de controle de versão, mas o GitHub se destacou desde o início ao enfatizar a usabilidade. Pouco tempo depois do lançamento do site, foi lançado o aplicativo GitHub Desktop, uma interface gráfica para as ações do Git tradicionalmente disponíveis por meio da linha de comando.
Se você ainda não tem muito conhecimento sobre o Git, talvez seja mais fácil contribuir durante o Hacktoberfest usando o GitHub Desktop. Você vai se familiarizar com os Concepts ao usá-lo em um projeto real e, quem sabe, pode até decidir se tornar um superusuário do Git mais para frente!
Clonando um repositório
Provavelmente, você contribuirá para projetos já existentes baixando primeiro uma cópia do repositório do projeto: “clonando o repositório”. No entanto, não se deve pensar nisso como se fosse baixar um episódio de uma série de TV.
O Git é um sistema de controle de versão distribuído. Isso significa que, embora você tenha acessado o GitHub para encontrar o projeto e cloná-lo, ele “existe” em todos os lugares onde foi clonado. Todas as diferentes cópias permanecem sincronizadas ao notificar o GitHub sobre suas próprias alterações e, em seguida, solicitar atualizações do GitHub. Existem ferramentas complexas no Git para mesclar essas alterações, permitindo que você atualize sua cópia local e trabalhe no que todos os outros estão vendo. Para um iniciante, porém, a melhor estratégia é fazer commits pequenos e frequentes.
Com o GitHub Desktop, um jeito prático de clonar um repositório é usar o link no GitHub.com. Se você tiver as permissões corretas, poderá abrir o menu “Código” acima de um projeto no site e selecionar a opção “Abrir com o GitHub Desktop”, o que levará você diretamente ao aplicativo com o menu para clonar um repositório já aberto e preenchido.
Cloning a repo from the GitHub site
No próprio aplicativo, você encontrará um menu suspenso de repositórios no canto superior esquerdo. Ao expandi-lo, você verá um botão “Adicionar”. Ao clicar nele, você também terá a opção de clonar repositórios do GitHub.
Criando um fork
Um fork de um repositório é outro tipo de cópia do repositório. Ele é controlado por você, em vez de pela organização responsável pelo repositório de origem. Você pode querer criar um fork para dar continuidade a um projeto ou levá-lo para uma direção diferente, ou simplesmente porque está fora da organização que normalmente trabalha nele.
Você pode fazer um fork de um repositório no site do GitHub. O botão fica próximo ao canto superior direito quando você está visualizando um repositório. Depois de fazer o fork, você terá uma cópia em seu nome de usuário que poderá abrir no GitHub Desktop, assim como qualquer outro repositório ao qual tenha acesso, usando o menu suspenso “Repositórios”.
Criação de um ramo
Na parte superior do aplicativo do GitHub, você verá em qual branch está trabalhando no momento. Ao abrir um repositório pela primeira vez, provavelmente estará no branch principal do projeto. Se quiser dar uma olhada em um determinado recurso que ainda está em desenvolvimento, muitas vezes será necessário mudar para um branch específico que contenha esse trabalho. Você pode ter uma ideia da finalidade de cada ramificação observando as solicitações de pull do projeto. Uma solicitação de pull é uma ramificação derivada de uma ramificação existente que solicita ser mesclada de volta à ramificação de origem.
Para criar um novo branch para o seu trabalho, primeiro determine qual branch é o mais adequado como ponto de partida. Você pode alternar entre branches usando o menu suspenso ao lado do branch atual, na parte superior da janela do aplicativo. No menu superior “Repositório”, selecione “Pull” para obter o código mais recente desse branch. O ideal é fazer isso antes de adicionar seu próprio código; caso contrário, você poderá enfrentar conflitos de mesclagem.
Depois de atualizar, crie um novo branch acessando novamente o menu suspenso de branches e clicando no botão “Novo Branch”. Isso abrirá uma janela onde você poderá inserir um nome para o seu novo branch. Tente seguir as convenções de nomenclatura de branches do projeto, mas, em caso de dúvida, dê a ele um nome que resuma a principal alteração que você fará nesse branch, como fix-password-resetting.
Commits
No seu repositório e branch no GitHub Desktop, você terá duas abas: “Alterações” e “Histórico”. A aba “Alterações” mostrará todos os arquivos que apresentam diferenças entre o seu repositório local e o commit mais recente. Se você perceber muitas alterações irrelevantes — ou alterações em arquivos que não deseja publicar acidentalmente —, pode adicionar um .gitignore arquivo listando todos os arquivos e caminhos que você não quer que o Git acompanhe. Um projeto já existente provavelmente já tem um.
Sempre que possível, é recomendável fazer commits que realizem apenas uma ação, por exemplo Add contact button event handler. Os testes podem ajudar a confirmar isso, já que eles não serão aprovados em todos os commits se metade do trabalho estiver em um commit e a outra metade em outro. Depois de salvar e testar suas alterações, selecione todos os arquivos relevantes na lista à esquerda da tela, adicione uma mensagem de commit e clique no botão “Fazer commit para...” abaixo.

Como criar pull requests
Em um projeto com mais de um colaborador, nunca é má ideia fazer alterações por meio de pull requests. É possível fazer alterações, submetê-las e enviá-las diretamente, mas, exceto em correções de emergência, essa prática é menos comum. Em projetos muito grandes, muitas vezes ela é totalmente proibida.
Depois de ter uma série de commits que, juntos, representam sua alteração salva em um branch dedicado, você pode publicar o branch e criar uma pull request. Isso é muito simples no GitHub Desktop. No menu superior “Branch”, você encontrará a opção “Create Pull Request”. Isso executará o processo para você, incluindo a publicação do seu branch, caso ele seja novo.
Fazer seu primeiro pull request é um grande passo. Você pode conferir nossa postagem sobre todo o processo de PR para obter mais detalhes.
Ações avançadas do Git
O GitHub Desktop não é uma ferramenta particularmente sofisticada, mas pode ajudar em cenários mais complexos do que os que abordamos aqui. No entanto, provavelmente é melhor não sair procurando criar conflitos de mesclagem apenas para aprender a resolvê-los.
As noções básicas acima devem ser suficientes para você começar. Quando precisar fazer algo mais complexo, explore o restante da interface do usuário e você encontrará outro nível de tarefas mais avançadas que o aplicativo pode realizar.
E agora?
A Vonage é uma parceira do Hacktoberfest em 2020, e adoraríamos convidá-lo a se familiarizar com o GitHub Desktop contribuindo para nossos repositórios. Teremos prazer em oferecer orientação na Slack da Comunidade Vonage para ajudá-lo a dar o próximo passo. Para mergulhar de cabeça nas comemorações, não deixe de conferir nossa página do Hacktoberfest para saber mais sobre tudo o que planejamos!
Compartilhar:
Sou desenvolvedor de JavaScript e instrutor de desenvolvimento na Vonage. Ao longo dos anos, tenho me interessado muito por modelos, Node.js, aplicativos web progressivos e estratégias “offline-first”, mas o que sempre adorei de verdade é uma API útil e bem documentada. Meu objetivo é tornar a sua experiência com nossas APIs a melhor possível.