Vodiči

Šta je GitHub? Verzioniranje za one koji nisu programeri

GitHub je web stranica koja čuva kod softverskih projekata zajedno s njihovom potpunom historijom, pa možete vidjeti svaku izmjenu, poništiti greške i raditi na istom projektu s drugim ljudima. Izgrađen je na Gitu, besplatnom softveru koji bilježi snimke datoteka projekta kroz vrijeme. Git je alat koji čuva historiju; GitHub je online dom u kojem se ta historija dijeli, čuva kao rezerva i o njoj se razgovara.

Ako gradite uz pomoć AI-ja, GitHub je uglavnom o dvije stvari: posjedovanju kopije vašeg koda izvan alata u kojem ste ga napravili i predaji programeru u formatu u kojem već radi.

Zašto je važan kada gradite uz AI

AI graditelj aplikacija brzo piše i mijenja mnogo koda, a nisu sve promjene poboljšanja. Verzioniranje je način da to sigurno kontrolišete.

  • Poništavanje bez brige. Svaka sačuvana promjena je snimak. Ako AI nešto pokvari, vraćate se na posljednju dobru verziju.
  • Vlasništvo. Kod u vašem GitHub nalogu ostaje vaš ako promijenite alat, prestanete plaćati jedan od njih ili želite drugo mišljenje.
  • Rad s programerima. Skoro svaki programer svakodnevno koristi Git. Repozitorij im omogućava da pregledaju ono što je AI napisao, isprave to i vrate izmjene nazad.
  • Deploy na drugom mjestu. Mnoge platforme za hosting mogu da objave aplikaciju direktno iz GitHub repozitorija.

Svakodnevna analogija: praćenje izmjena i zajednički disk

Zamislite dokument s uključenim praćenjem izmjena, sačuvan na zajedničkom disku.

  • Git je praćenje izmjena: svaka izmjena se bilježi, uz to ko ju je napravio, kada i zašto, i možete se vratiti na bilo koju verziju.
  • GitHub je zajednički disk: dokument živi na internetu, drugi mogu dobiti kopiju, a postoji mjesto za komentare i odobravanje.
  • Grana (branch) je kao sačuvana kopija pod nazivom „nacrt — novi dio o cijenama” da možete eksperimentisati bez diranja verzije na koju se svi oslanjaju. Ako eksperiment uspije, spajate ga nazad.

Razlika u odnosu na dokument je u obimu. Aplikacija ima stotine datoteka, a Git ih prati sve zajedno, pa je snimak stanje cijelog projekta odjednom.

Git i GitHub pojmovi s kojima ćete se susresti

PojamJednostavno značenje
Repozitorij (repo)Folder projekta s cijelom historijom
CommitSačuvani snimak izmjena, s kratkom porukom koja ih opisuje
Grana (branch)Zasebna linija rada, da eksperimenti ne ometaju glavnu verziju
mainUobičajeni naziv za glavnu granu — verzija koja ide u produkciju
Merge (spajanje)Prenošenje izmjena jedne grane u drugu
Merge konfliktDvije izmjene diraju iste linije; neko mora odlučiti koju zadržati
Clone (klon)Preuzimanje potpune kopije repozitorija, uključujući historiju
Push / pullSlanje vaših commitova na GitHub / preuzimanje tuđih commitova
Pull request (PR)GitHub stranica koja predlaže spajanje grane, gdje ljudi pregledaju i diskutuju izmjene
ForkVaša vlastita kopija tuđeg repozitorija na GitHubu
IssueZadatak ili prijava greške vezana za repozitorij
.gitignoreLista datoteka koje Git nikada ne smije bilježiti, na primjer .env tajne i preuzete zavisnosti
GitHub ActionsAutomatizacija koja se izvršava na GitHubu, na primjer testovi za svaki pull request

Dvije stvari vrijedi naglasiti. Prvo, Git historija je po dizajnu trajna: ako se lozinka commituje i pošalje, brisanje u kasnijem commitu je ne uklanja iz historije. Drugo, commit je vrijedan koliko i njegova poruka. „Ispravljeno dvostruko brojanje rezervacija kada dvije osobe rezervišu istovremeno” korisno je kasnije; „ažuriranje” nije.

Primjer: predaja aplikacije izrađene uz AI freelanceru

Napravili ste portal za klijente uz pomoć AI graditelja aplikacija. Radi, ali želite da freelance programer doda zahtjevnu integraciju sa vašim računovodstvenim softverom.

  1. Povežite projekat s novim privatnim GitHub repozitorijem i pošaljite kod. Repozitorij sada sadrži kod i njegovu historiju.
  2. Provjerite šta je u njemu. Otvorite repozitorij na GitHubu. Ne bi smjelo biti .env datoteke ni API ključeva u kodu. Tajne ostaju u postavkama vaše platforme i s freelancerom se dijele posebno, ako uopšte. Pogledajte varijable okruženja i tajne.
  3. Pozovite freelancera kao saradnika samo na taj repozitorij.
  4. Radi na grani pod nazivom poput accounting-sync, commituje kako napreduje i otvara pull request kada završi.
  5. Vi pregledate pull request. Čak i bez čitanja koda, možete pročitati opis, provjeriti koje su datoteke promijenjene i postaviti pitanja u komentarima.
  6. Spojite kada ste zadovoljni, pa povucite (pull) izmjene nazad u svoj graditelj kako biste vi i AI nastavili s novom verzijom.

Pritom možete tačno vidjeti šta je promijenjeno i poništiti to po potrebi. To je cijela vrijednost verzioniranja u jednom toku rada. Ako još razmišljate da li uopšte angažovati programera, pogledajte angažovanje programera ili izradu uz AI.

Česte greške i zablude

  • „GitHub i Git su ista stvar.” Git radi i bez GitHuba; alternative poput GitLaba i Bitbucketa također hostuju Git repozitorije.
  • „GitHub će pokrenuti moju aplikaciju.” GitHub čuva kod. Pokretanje aplikacije za javnost je web hosting, zasebna usluga (iako neke platforme mogu da objave aplikaciju direktno s GitHuba).
  • Commitovanje tajni. Najštetnija i najčešća greška. Koristite .gitignore za .env datoteke i zamijenite svaki ključ koji je ikada bio pushovan.
  • Samo jedna grana i bez poruka. Dovoljno za solo eksperimente, ali dajte commitovima jasne poruke i koristite grane za sve rizično.
  • Uređivanje na dva mjesta istovremeno. Ako mijenjate kod na GitHubu i u AI graditelju bez povlačenja izmjena između, stvarate konflikte. Odaberite jedno mjesto za uređivanje u datom trenutku i sinhronizujte prije prebacivanja.
  • Mišljenje da je privatni repozitorij rezerva svega. Čuva kod, a ne sadržaj vaše baze podataka ni otpremljene datoteke. Ti podaci trebaju vlastite rezervne kopije.

Šta tražiti od AI graditelja

  • „Dodaj .gitignore koji isključuje .env, foldere zavisnosti i izlaz builda.”
  • „Napiši README koji objašnjava kako se instalira, koje varijable okruženja su potrebne (samo nazivi) i kako se aplikacija pokreće.”
  • „Dodaj .env.example sa svim nazivima varijabli i bez stvarnih vrijednosti.”
  • „Koristi jasne, opisne poruke commitova za svaku promjenu.”

Tih četiri zahtjeva prave repozitorij koji programer može preuzeti za nekoliko minuta. Za premještanje aplikacije na vaše servere pogledajte kako izvesti i samostalno hostovati aplikaciju izrađenu uz AI, a za učvršćivanje prije stvarnih korisnika kako prenijeti AI prototip u produkciju.

GitHub i Mythex

Mythex čuva historiju umjesto vas na svakom planu: nakon svakog uspješnog koraka agenta pravi checkpoint, koji je Git snimak na koji se možete vratiti. Na Pro planu možete povezati GitHub i gurati ili povlačiti projekat s vašim repozitorijem, ili preuzeti cijeli projekat kao arhivu; tajne i instalirane zavisnosti su isključene iz izvoza. GitHub ovdje služi za sinhronizaciju koda, a ne za prijavu u Mythex. Pogledajte GitHub, izvoz i uvoz u dokumentaciji i stranicu s cijenama za to što svaki plan uključuje.

Pitanja

Koja je razlika između Gita i GitHuba?

Git je besplatan softver koji bilježi historiju datoteka projekta na bilo kojem računaru. GitHub je web stranica, u vlasništvu kompanije Microsoft, koja hostuje Git repozitorije na internetu i dodaje alate za saradnju, kao što su pull requestovi, issue-i i automatizacija.

Treba li mi GitHub da napravim aplikaciju uz pomoć AI-ja?

Ne. Mnogi AI graditelji aplikacija čuvaju historiju umjesto vas unutar samog proizvoda. GitHub postaje koristan kada želite vlastitu kopiju koda, kada želite raditi s programerom ili kada planirate da aplikaciju hostujete negdje drugdje.

Je li GitHub besplatan?

GitHub ima besplatan plan koji uključuje javne i privatne repozitorije, što je dovoljno za većinu pojedinaca i malih timova. Plaćeni planovi donose upravljanje timom i dodatne funkcije; aktuelne detalje provjerite na GitHubovoj stranici s cijenama.

Je li moj kod javan na GitHubu?

Samo ako repozitorij učinite javnim. Privatne repozitorije vide samo vi i ljudi koje pozovete. Čak ni u privatnom repozitoriju nikada ne commitujte lozinke ni API ključeve.

Mythex · Pricing · Izradite bilo šta uz AI · Šabloni za web stranice i aplikacije · Mythex u poređenju · Rječnik izrade aplikacija uz AI · Besplatni alati za izradu aplikacija uz AI · English

English አማርኛ العربية Български বাংলা 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) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)