Guias

O Que É o GitHub? Controlo de Versões Para Não Programadores

GitHub é um site que guarda o código de projetos de software juntamente com todo o seu histórico, para poder ver cada alteração, desfazer erros e trabalhar no mesmo projeto com outras pessoas. Assenta no Git, um software gratuito que regista instantâneos dos ficheiros de um projeto ao longo do tempo. O Git é a ferramenta que mantém o histórico; o GitHub é a casa online onde esse histórico é partilhado, guardado em segurança e discutido.

Se cria apps com IA, o GitHub serve sobretudo para duas coisas: ter uma cópia própria do seu código fora da ferramenta onde o criou, e entregá-lo a um programador no formato que ele já usa.

Porque é importante quando cria com IA

Um construtor de apps com IA escreve e altera muito código depressa, e nem toda a alteração é uma melhoria. O controlo de versões é a forma de manter isso seguro.

  • Desfazer com confiança. Cada alteração guardada é um instantâneo. Se a IA estragar alguma coisa, volta ao último que estava bom.
  • Propriedade. O código na sua conta do GitHub continua a ser seu se mudar de ferramenta, deixar de pagar por uma ou quiser uma segunda opinião.
  • Trabalhar com programadores. Quase todos os programadores usam o Git diariamente. Um repositório permite-lhes rever o que a IA escreveu, corrigi-lo e devolver as alterações.
  • Publicar noutro sítio. Muitas plataformas de alojamento conseguem publicar diretamente a partir de um repositório do GitHub.

Uma analogia do dia a dia: controlo de alterações e uma pasta partilhada

Pense num documento com o controlo de alterações ativado, guardado numa pasta partilhada.

  • O Git é o controlo de alterações: cada edição fica registada, com quem a fez, quando e porquê, e pode voltar a qualquer versão.
  • O GitHub é a pasta partilhada: o documento fica online, outras pessoas podem obter uma cópia, e há um sítio para comentar e aprovar.
  • Um branch (ramo) é como guardar uma cópia chamada «rascunho — nova secção de preços» para experimentar sem tocar na versão de que todos dependem. Se a experiência correr bem, junta-a de volta.

A diferença em relação a um documento é a escala. Uma app tem centenas de ficheiros, e o Git acompanha todos em conjunto, por isso um instantâneo é o estado do projeto inteiro de uma só vez.

Termos de Git e GitHub que vai encontrar

TermoSignificado simples
Repositório (repo)Uma pasta de projeto com todo o seu histórico
CommitUm instantâneo guardado de alterações, com uma mensagem curta a descrevê-las
BranchUma linha de trabalho separada, para que as experiências não perturbem a versão principal
mainO nome habitual do ramo principal — a versão que vai para produção
MergeJuntar as alterações de um branch noutro
Conflito de mergeDuas alterações tocaram nas mesmas linhas; alguém tem de escolher qual manter
CloneDescarregar uma cópia completa de um repositório, com o histórico
Push / pullEnviar os seus commits para o GitHub / trazer os commits dos outros
Pull request (PR)Uma página do GitHub que propõe juntar um branch, onde as pessoas revêem e discutem as alterações
ForkA sua própria cópia do repositório de outra pessoa no GitHub
IssueUma tarefa ou relatório de erro do GitHub associado ao repositório
.gitignoreUma lista de ficheiros que o Git nunca deve registar, como os segredos em .env e as dependências descarregadas
GitHub ActionsAutomatização que corre no GitHub, por exemplo testes em cada pull request

Dois pontos merecem destaque. Primeiro, o histórico do Git é permanente por desenho: se uma palavra-passe for registada e enviada, apagá-la num commit posterior não a remove do histórico. Segundo, um commit só é tão útil como a sua mensagem. «Corrigir contagem dupla de marcações quando duas pessoas marcam ao mesmo tempo» ajuda-o mais tarde; «atualizar» não.

Exemplo prático: entregar uma app criada com IA a um freelancer

Criou um portal de clientes com um construtor de apps com IA. Funciona, mas quer que um programador freelancer acrescente uma integração complicada com o seu software de contabilidade.

  1. Ligue o projeto a um novo repositório privado no GitHub e faça push. O repositório passa a ter o código e o histórico.
  2. Verifique o que lá está. Abra o repositório no GitHub. Não deve haver nenhum ficheiro .env nem chaves de API no código. Os segredos ficam nas definições da sua plataforma e são partilhados com o freelancer à parte, se for o caso — veja variáveis de ambiente e segredos.
  3. Convide o freelancer como colaborador apenas desse repositório.
  4. Ele trabalha num branch com um nome como accounting-sync, faz commits à medida que avança e abre um pull request quando terminar.
  5. Reveja o pull request. Mesmo sem ler código, pode ler a descrição, ver que ficheiros mudaram e fazer perguntas nos comentários.
  6. Faça merge quando estiver satisfeito e depois pull das alterações para o seu construtor, para que você e a IA continuem a partir da nova versão.

Ao longo do processo, pode ver exatamente o que mudou e desfazer se for preciso. É todo o valor do controlo de versões num único fluxo de trabalho. Se ainda está a decidir se deve trazer um programador, veja contratar um programador ou criar com IA.

Erros comuns e ideias erradas

  • «GitHub e Git são a mesma coisa.» O Git funciona sem o GitHub; alternativas como o GitLab e o Bitbucket também alojam repositórios Git.
  • «O GitHub vai executar a minha app.» O GitHub guarda código. Executá-la para o público é alojamento web, um serviço à parte (embora algumas plataformas publiquem a partir do GitHub).
  • Fazer commit de segredos. É o erro mais prejudicial e mais comum. Use o .gitignore para os ficheiros .env e substitua qualquer chave que alguma vez tenha sido enviada.
  • Um só branch e sem mensagens. Serve para experiências a solo, mas dê às alterações mensagens claras e use branches para tudo o que seja arriscado.
  • Editar em dois sítios ao mesmo tempo. Se alterar código no GitHub e no seu construtor de IA sem sincronizar pelo meio, criam-se conflitos. Escolha um sítio para editar de cada vez e sincronize antes de mudar.
  • Achar que um repositório privado é uma cópia de segurança de tudo. Guarda código, não o conteúdo da base de dados nem os ficheiros carregados. Isso precisa das suas próprias cópias de segurança.

O que pedir ao seu construtor de IA

  • «Acrescenta um .gitignore que exclua .env, as pastas de dependências e o resultado da compilação.»
  • «Escreve um README que explique como instalar, quais as variáveis de ambiente necessárias (apenas os nomes) e como executar a app.»
  • «Acrescenta um .env.example com todos os nomes de variáveis e sem valores reais.»
  • «Usa mensagens de commit claras e descritivas para cada alteração.»

Estes quatro pedidos criam um repositório que um programador consegue retomar em minutos. Para levar a app para os seus próprios servidores, veja como exportar e alojar por conta própria uma app criada com IA, e para a preparar para utilizadores reais, levar um protótipo de IA para produção.

GitHub e Mythex

O Mythex guarda o histórico por si em todos os planos: após cada turno bem-sucedido do agente, cria um ponto de controlo, que é um instantâneo Git para o qual pode voltar. No plano Pro, pode ligar o GitHub e fazer push ou pull do projeto para o seu próprio repositório, ou descarregar o projeto inteiro como arquivo; os segredos e as dependências instaladas ficam excluídos das exportações. Aqui, o GitHub serve para sincronizar código, não para iniciar sessão no Mythex. Veja GitHub, exportação e importação na documentação e a página de preços para saber o que inclui cada plano.

Perguntas

Qual é a diferença entre Git e GitHub?

O Git é um software gratuito que regista o histórico dos ficheiros de um projeto em qualquer computador. O GitHub é um site, detido pela Microsoft, que aloja repositórios Git online e acrescenta ferramentas de colaboração, como pull requests, issues e automatização.

Preciso do GitHub para criar uma app com IA?

Não. Muitos construtores de apps com IA guardam o histórico por si dentro do próprio produto. O GitHub torna-se útil quando quer uma cópia própria do código, quer trabalhar com um programador ou planeia alojar a app noutro sítio.

O GitHub é gratuito?

O GitHub tem um plano gratuito que inclui repositórios públicos e privados, o que basta para a maioria dos indivíduos e pequenas equipas. Os planos pagos acrescentam gestão de equipas e funcionalidades extra; consulte a página de preços do GitHub para os detalhes atuais.

O meu código fica público no GitHub?

Só se tornar o repositório público. Os repositórios privados são visíveis apenas para si e para as pessoas que convidar. Mesmo num repositório privado, nunca faça commit de palavras-passe nem de chaves de API.

Mythex · Pricing · Crie qualquer coisa com IA · Modelos de sites e apps · Mythex comparado · Glossário de criação de apps com IA · Ferramentas grátis para criar apps com IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)