Què és GitHub? Control de versions per a no programadors
GitHub és una web que guarda el codi de projectes de programari amb el seu historial complet, de manera que pots veure cada canvi, desfer errors i treballar en el mateix projecte amb altres persones. Està construïda sobre Git, un programari gratuït que registra instantànies dels fitxers d'un projecte al llarg del temps. Git és l'eina que guarda l'historial; GitHub és la casa en línia on aquest historial es comparteix, es fa una còpia de seguretat i es debat.
Si construeixes amb IA, GitHub serveix sobretot per a dues coses: tenir una còpia pròpia del teu codi fora de l'eina amb què l'has creat, i passar-lo a un developer en el format que ja fa servir.
Per què importa quan construeixes amb IA
Un constructor d'apps amb IA escriu i canvia molt codi ràpidament, i no tots els canvis són millores. El control de versions és la manera de mantenir-ho segur.
- Desfer amb confiança. Cada canvi guardat és una instantània. Si la IA trenca alguna cosa, tornes a l'última versió que funcionava.
- Propietat. El codi al teu compte de GitHub continua sent teu si canvies d'eina, deixes de pagar-ne una o vols una segona opinió.
- Treballar amb developers. Gairebé tots els developers fan servir Git cada dia. Un repositori els permet revisar el que ha escrit la IA, corregir-ho i tornar a enviar els canvis.
- Desplegar en un altre lloc. Moltes plataformes d'allotjament poden desplegar directament des d'un repositori de GitHub.
Una analogia quotidiana: control de canvis més una unitat compartida
Pensa en un document amb el control de canvis activat, guardat en una unitat compartida.
- Git és el control de canvis: cada edició queda registrada, amb qui l'ha feta, quan i per què, i pots tornar a qualsevol versió.
- GitHub és la unitat compartida: el document viu en línia, altres persones poden obtenir-ne una còpia i hi ha un lloc per comentar i aprovar.
- Una branca és com desar una còpia que es digui « esborrany — nova secció de preus » per poder experimentar sense tocar la versió que tothom fa servir. Si l'experiment funciona, la fusiones de nou.
La diferència amb un document és l'escala. Una app són centenars de fitxers, i Git els registra tots junts, de manera que una instantània és l'estat de tot el projecte alhora.
Termes de Git i GitHub que trobaràs
| Terme | Significat senzill |
|---|---|
| Repositori (repo) | Una carpeta de projecte amb tot el seu historial |
| Commit | Una instantània guardada de canvis, amb un missatge breu que els descriu |
| Branca | Una línia de treball separada, perquè els experiments no molestin la versió principal |
| main | El nom habitual de la branca principal: la versió que es publica |
| Merge (fusió) | Portar els canvis d'una branca a una altra |
| Conflicte de fusió | Dos canvis han tocat les mateixes línies; algú ha de triar quina es queda |
| Clone | Descarregar una còpia completa d'un repositori, amb l'historial inclòs |
| Push / pull | Enviar els teus commits a GitHub / portar a casa els commits dels altres |
| Pull request (PR) | Una pàgina de GitHub que proposa fusionar una branca, on la gent revisa i debat els canvis |
| Fork | La teva pròpia còpia del repositori d'una altra persona a GitHub |
| Issue | Una tasca pendent o un informe d'error de GitHub lligat al repositori |
.gitignore | Una llista de fitxers que Git no ha de registrar mai, com els secrets de .env i les dependències descarregades |
| GitHub Actions | Automatització que s'executa a GitHub, per exemple proves a cada pull request |
Hi ha dos punts que val la pena subratllar. Primer, l'historial de Git és permanent per disseny: si s'ha fet commit i push d'una contrasenya, esborrar-la en un commit posterior no la treu de l'historial. Segon, un commit només és útil si ho és el seu missatge. « Corregeix el doble cobrament de reserves quan dues persones reserven alhora » t'ajuda més endavant; « actualitza » no.
Un exemple pas a pas: passar una app creada amb IA a un freelance
Has creat un portal de clients amb un constructor d'apps amb IA. Funciona, però vols que un developer freelance afegeixi una integració complicada amb el teu programari de comptabilitat.
- Connecta el projecte a un repositori privat nou de GitHub i fes push. Ara el repositori conté el codi i el seu historial.
- Revisa què hi ha. Obre el repositori a GitHub. No hi ha d'haver cap fitxer
.envni claus d'API al codi. Els secrets es queden a la configuració de la teva plataforma i es comparteixen amb el freelance per separat, si cal; consulta variables d'entorn i secrets. - Convida el freelance com a col·laborador només en aquest repositori.
- Treballa en una branca anomenada alguna cosa com
sincronitzacio-comptabilitat, fa commits pel camí i obre una pull request quan acabi. - Revisa la pull request. Fins i tot sense llegir codi, pots llegir la descripció, comprovar quins fitxers han canviat i fer preguntes als comentaris.
- Fusiona quan estiguis satisfet i després fes pull dels canvis al teu constructor perquè tu i la IA continuïn des de la nova versió.
Al llarg del camí, pots veure exactament què ha canviat i desfer-ho si cal. Aquest és tot el valor del control de versions en un sol flux de treball. Si encara estàs decidint si incorporar un developer, consulta contractar un developer o construir amb IA.
Errors habituals i idees equivocades
- « GitHub i Git són el mateix.» Git funciona sense GitHub; alternatives com GitLab i Bitbucket també allotgen repositoris Git.
- « GitHub executarà la meva app.» GitHub guarda codi. Executar-la per al públic és allotjament web, un servei diferent (encara que alguns allotjaments despleguen des de GitHub).
- Fer commit de secrets. L'error més perjudicial i més comú. Fes servir
.gitignoreper als fitxers.envi revoca qualsevol clau que mai s'hagi pujat. - Només una branca i sense missatges. Va bé per a experiments en solitari, però posa missatges clars als commits i fes branques per a tot el que sigui arriscat.
- Editar en dos llocs alhora. Si canvies codi a GitHub i al constructor d'IA sense fer pull entremig, es crearan conflictes. Tria un lloc per editar cada vegada i sincronitza abans de canviar.
- Pensar que un repositori privat és una còpia de seguretat de tot. Conté codi, no el contingut de la base de dades ni els fitxers pujats. Aquests necessiten les seves pròpies còpies de seguretat.
Què demanar al teu constructor d'IA
- « Afegeix un
.gitignoreque exclogui.env, les carpetes de dependències i la sortida de compilació. » - « Escriu un README que expliqui com instal·lar, quines variables d'entorn calen (només els noms) i com executar l'app. »
- « Afegeix un
.env.exampleamb tots els noms de variables i cap valor real. » - « Fes servir missatges de commit clars i descriptius per a cada canvi. »
Aquestes quatre peticions creen un repositori que un developer pot agafar en minuts. Per traslladar l'app als teus propis servidors, consulta com exportar i autoallotjar una app creada amb IA, i per reforçar-la abans d'arribar a usuaris reals, portar un prototip d'IA a producció.
GitHub i Mythex
Mythex guarda l'historial per a tu en tots els plans: després de cada torn de l'agent amb èxit, desa un punt de control, que és una instantània de Git a la qual pots tornar. Al Pro, pots connectar GitHub i fer push o pull del projecte amb el teu propi repositori, o descarregar tot el projecte com a arxiu; els secrets i les dependències instal·lades s'exclouen de les exportacions. Aquí GitHub serveix per sincronitzar codi, no per iniciar sessió a Mythex. Consulta GitHub, exportació i importació a la documentació, i la pàgina de preus per saber què inclou cada pla.
Preguntes
Quina diferència hi ha entre Git i GitHub?
Git és un programari gratuït que registra l'historial dels fitxers d'un projecte en qualsevol ordinador. GitHub és una web, propietat de Microsoft, que allotja repositoris Git en línia i afegeix eines de col·laboració com les pull requests, les issues i l'automatització.
Necessito GitHub per crear una app amb IA?
No. Molts constructors d'apps amb IA guarden l'historial per a tu dins del producte. GitHub esdevé útil quan vols una còpia pròpia del codi, vols treballar amb un developer o penses allotjar l'app en un altre lloc.
GitHub és gratuït?
GitHub té un pla gratuït que inclou repositoris públics i privats, suficient per a la majoria de particulars i equips petits. Els plans de pagament afegeixen gestió d'equips i funcions extra; consulta la pàgina de preus de GitHub per als detalls actuals.
El meu codi és públic a GitHub?
Només si fas públic el repositori. Els repositoris privats només els veuen tu i les persones que convides. Fins i tot en un repositori privat, mai no hi pugis contrasenyes ni claus d'API.