Koja je životinja maskota github-a. Git i GitHub: šta je to i koja je razlika

Otpor promjenama je osnovna ljudska osobina. Ako Git nije postojao kada ste počeli da radite sa sistemima za kontrolu verzija, velika je verovatnoća da ste počeli sa Subverzijom. Ljudi često kažu da je Git pretežak za početnike. Međutim, molim da se ne slažem sa vama.

U ovom članku ću vam reći kako možete koristiti Git za rad sa svojim projektima. Pretpostavimo da kreirate projekat od nule i želite da koristite Git kao sistem kontrole verzija. Nakon predstavljanja osnovnih naredbi, pogledat ćemo kako možete objaviti svoj kod na GitHub-u.

Ovaj članak će pokriti osnove - kako inicijalizirati projekt, kako upravljati novim i postojećim datotekama i kako pohraniti svoj kod u oblak. Preskočićemo neke komplicirane stvari poput grananja jer je ovaj članak namijenjen početnicima.

Instaliranje Git

Zvanična Git web stranica dostupna je za različite sisteme - Linux, Mac, Windows. U našem slučaju koristićemo Ubuntu 13.04, a Git ćemo instalirati preko apt-get.

Sudo apt-get install git

Početna konfiguracija

Kreirajmo direktorij u kojem ćemo raditi. Također možete koristiti Git za rad na postojećem projektu, u kom slučaju nećete morati kreirati demo direktorij kao što je opisano u nastavku.

Mkdir my_git_project cd my_git_project

Prvi korak je inicijalizacija Git spremišta u direktoriju projekta. To možete učiniti pomoću naredbe init, koja kreira .git direktorij sa svim informacijama o vašem projektu.

Git config --global user.name "Shaumik" git config --global user.email " [email protected]" git config --global color.ui "auto"

Vrijedi napomenuti da ako ne navedete svoju adresu i ime, umjesto toga će se koristiti zadane vrijednosti. U našem slučaju, zadane vrijednosti će biti donny i donny@ubuntu.

Također smo postavili boju interfejsa na auto tako da će izlaz Git komandi biti obojen. Ovim naredbama dodajemo prefiks --global tako da se ove vrijednosti koriste u cijelom sistemu i ne moraju se postavljati od projekta do projekta.

Priprema fajlova za urezivanje

Sljedeći korak je kreiranje nekih datoteka. Za ovo možete koristiti bilo koji uređivač teksta. Imajte na umu da ako inicijalizirate Git na postojećem projektu, ne morate raditi ovaj korak.

Provjera statusa spremišta

Sada kada imate datoteke u svom projektu, pogledajmo kako Git rukuje njima. Da biste provjerili trenutni status spremišta, koristite naredbu git status

Dodavanje fajlova u Git

U ovom trenutku Git ne prati nijedan od naših fajlova. Morate posebno dodati datoteke u Git da bi se to dogodilo. Da bismo to učinili, koristit ćemo naredbu add.

Git add my_file

Nakon što smo provjerili status spremišta, vidimo da je jedan od fajlova već dodan u njega.

Za dodavanje više datoteka koristimo sljedeće (imajte na umu da smo prvu datoteku dodali ranije, tako da dodajemo samo preostale dvije).

Git add myfile2 myfile3

Moguće je koristiti git add rekurzivno, ali budite oprezni s ovom komandom. Postoje neke datoteke (kao što su kompajlirani programi) koje ne bi trebalo dodavati kontroli verzija. Ako koristite git add rekurzivno, takve datoteke će također završiti u spremištu.

Brisanje fajlova

Zamislimo da ste slučajno dodali datoteku u spremište koja nije trebala biti tamo. Ili želite da uklonite datoteku iz sistema kontrole verzija. Generalno, komanda git rm neće samo ukloniti datoteku iz spremišta, već će je i fizički ukloniti sa diska. Da bi Git prestao pratiti datoteku, ali je zadržao na disku, koristite sljedeću naredbu:

Git rm --cached [filename]

Utvrdite promjene

Nakon što dodate sve potrebne datoteke, možete ih urezati u Git. Zamislite urezivanje kao snimak stanja projekta u određenoj fazi, na koji se možete vratiti u bilo kom trenutku i vidjeti stanje projekta u tom trenutku. Svako urezivanje ima pridruženu poruku, koja je navedena kao argument nakon -m prefiksa

Git commit -m "Moje prvo urezivanje"

Navedite poruke koje sadrže korisne informacije, jer pomažu da se shvati šta je tačno promenjeno kao deo datog urezivanja. Izbjegavajte bilo kakve općenite poruke kao što su "Pravila o greškama". Ako imate program za praćenje grešaka, možete navesti poruku kao što je "Bug #123 fixed." Dobra je praksa da u svoj post navedete naziv grane ili poboljšanja. Na primjer, “Upravljanje imovinom – dodana mogućnost generiranja PDF-a na osnovu imovine” je jasna i razumljiva poruka.

Git identifikuje urezivanje dugim heksadecimalnim brojem. Obično nema potrebe za kopiranjem cijelog reda; prvih 5-6 znakova je dovoljno za identifikaciju određenog urezivanja. Na snimku ekrana možete vidjeti da je naše urezivanje identificirano brojem 8dd76fc.

Dalje se obavezuje

Promijenimo nekoliko fajlova nakon što smo ih urezali. Nakon što ih promijenimo, git status će prijaviti da smo promijenili datoteke.

Možete vidjeti šta se promijenilo u ovim datotekama od prethodnog urezivanja koristeći git diff komandu. Ako želite vidjeti promjene za određenu datoteku, možete koristiti git diff<файл> .

Potrebno je indeksirati promjene i urezati ih. Sve promijenjene projektne datoteke mogu se dodati u urezivanje pomoću sljedeće naredbe:

Možete izbjeći korištenje ove naredbe dodavanjem opcije -a u git commit. Ova komanda će indeksirati sve promijenjene datoteke i urezati ih. Ali ovaj pristup može biti prilično opasan, jer greškom možete počiniti nešto što niste htjeli. Na primjer, recimo da ste otvorili datoteku i slučajno je promijenili. Prilikom indeksiranja promijenjenih datoteka, bit ćete obaviješteni o promjenama u svakom fajlu. Ali ako urezujete sve izmijenjene datoteke bez gledanja pomoći. git commit -a , tada će svi fajlovi biti urezani, uključujući i one koje niste htjeli urezati.

Nakon što ste indeksirali datoteke, možete početi sa urezivanjem. Kao što je ranije spomenuto, možete specificirati poruku za urezivanje pomoću prekidača -m. Ali takođe možete specificirati komentare u više redaka koristeći git commit komandu, koja otvara konzolni editor za unos komentara.

Upravljanje projektima

Za pregled historije projekta možete koristiti sljedeću naredbu:

Prikazaće kompletnu istoriju projekta u obliku liste urezivanja i informacija o njima. Informacije o urezivanju sadrže hash urezivanja, autora, vrijeme i poruku urezivanja. Postoji mnogo tipova git log naredbi sa kojima ćete morati da se upoznate kada koristite grananje Gita. Za pregled detalja određenog urezivanja i datoteka koje su promijenjene, pokrenite sljedeću naredbu:

Git show<хеш_коммита>

Gdje<хеш_коммита>- heksadecimalni broj povezan sa urezivanjem. Pošto je ovaj vodič namijenjen početnicima, nećemo pokrivati ​​kako vratiti stanje na određeno urezivanje ili kako upravljati granama.

Dobar dan svima! Verovatno ste čuli reč kao GitHub? U svakom slučaju, danas ćemo razgovarati o tome šta je to i naučiti osnove rada s njim.

Šta je GitHub?

GitHub je usluga koja je dizajnirana da omogući programerima da dijele svoje projekte, razvijaju ih zajedno, kao i da prate verzije, jer... GitHub baziran na sistemu kontrole verzija Git.

Glavna prednost GitHub je da je besplatan za OpenSource projekte, ali ako je projekat privatni, onda ćete morati platiti.

Svaka osoba može stvarati spremište, gdje možete pohraniti neke svoje projekte i, ako želite, pokazati ih drugim ljudima. Drugi mogu vidjeti sve projektne datoteke i njihov izvorni kod uz isticanje sintakse, a ako je potrebno, mogu ih čak preuzeti ili modificirati.

Registracija

Registracija u ovom sistemu je vrlo jednostavna. Samo trebate pratiti link

https://github.com/

Tamo unesite neiskorišteni login, email i lozinku, a zatim kliknite na dugme Prijavite se za GitHub. Sada idite na svoju email adresu i potvrdite registraciju klikom na link koji vam je poslat. Sada se prijavite i... već ste registrovani. Nije teško, zar ne?

Kreiranje spremišta

Da kreirate svoje spremište, pronađite znak plus u gornjem desnom uglu i kliknite na njega, selektujući tamo Novo spremište.

Na samom početku unesite naziv vašeg projekta, a zatim njegov opis (opciono).

Ispod možete vidjeti radio prekidač sa načinima rada Javno I Privatno. Prvi znači da će vaše spremište biti vidljivo svima i da možete izabrati ko se može posvetiti njemu. Drugi znači da će spremište biti privatno, ali možete odabrati ko može urezati i pogledati.

Ispod možete označiti polje da odmah inicijalizirate ovo spremište sa datotekom readme.

Sada kliknite na dugme Kreirajte spremište.

Čestitamo! Napravili ste svoje prvo spremište!

Instaliranje GitHub-a

Za Windows postoji program windows.github.com

Za Mac postoji mac.github.com

Ovi programi vam omogućavaju rad sa grafičkim interfejsom, ali mi ćemo raditi sa komandnom linijom. Ako imate mac, onda sve radi iz kutije, pa šta ako ste sretni vlasnik prozori, onda ćete morati staviti msysqgit

http://msysgit.github.io/

Otvorite terminal (komandnu liniju) i unesite sljedeće:

Git --verzija

Ako vidite verziju, onda sve radi.

Kloniranje spremišta

Idite na spremište koje ste kreirali i pronađite polje za tekst na desnoj strani označeno HTTPS. Tamo ćete pronaći link koji trebate kopirati.

Otvorite terminal i unesite sljedeće:

Git kloni YOURLINK YOURNAME

Umjesto yourlink zalijepite kopiranu vezu i unesite bilo koje ime koje želite, odvojeno razmakom. Ako ne unesete ime, ono će biti isto kao ime spremišta.

Sada unutar foldera git Pojavilo se spremište koje smo klonirali. Unutra možete pronaći fajl readme.txt. Za sada, to je sve što imamo.

Postavke

Kada napravite bilo kakve promjene, sve se pohranjuje i prikazuje. Ovo je velika prednost sistema kontrole verzija. Ali moramo napraviti nekoliko prilagodbi.

U terminalu unesite sljedeće:

Git config --global user.name "Vaše ime"
git config --global user.email "Vaša e-pošta"

Ako sada uđete

Git config user.name

Tada ćete dobiti navedeno ime.

Dakle, ovim se završava prvi dio, posvećen radu sa GitHub. Danas smo se uglavnom bavili postavkama, ali će kasnije postati zanimljivije i odmah ćete shvatiti ljepotu ovog servisa. Hvala vam na pažnji!

GitHub - šta je to? Ovaj resurs je web-bazirana platforma za kontrolu verzija i suradnju za programere softvera. Isporučen kroz poslovni model softvera kao usluge, lansiran je 2008. Resurs je baziran na Gitu, sistemu upravljanja izvornim kodom koji je dizajniran da ubrza razvoj softvera.

GitHub je trenutno najpopularnija usluga za hosting kodova među programerima i programerima.

GitHub - šta je to?

Git se koristi za pohranjivanje izvornog koda projekta i praćenje kompletne historije svih promjena koda. Ovo omogućava programerima da efikasnije sarađuju na projektu obezbeđujući alate za upravljanje mogućim konfliktnim promenama od strane više programera. Rad sa GitHub-om vam omogućava da besplatno prilagodite i poboljšate softver iz njegovih javnih spremišta, ali naplaćujete privatne repozitorije, nudeći različite planove cijena. Svako javno ili privatno spremište sadrži sve projektne datoteke, kao i historiju izmjena svake datoteke. Repozitoriji mogu imati više zaposlenih i mogu biti javni ili privatni.

Kako raditi na GitHubu?

Platforma olakšava društveno kodiranje pružanjem web interfejsa za Git repozitorij koda i alata za upravljanje za saradnju. Ovaj projekat se može smatrati ozbiljnim resursom za društveno umrežavanje za kreatore softvera.

Kako Učesnici mogu zajedno kodirati, evaluirati rad jedni drugih, dobiti ažurirane informacije o određenim projektima i komunicirati javno ili privatno.

Korisnici mogu dodati druge učesnike u svoj projekat radi saradnje.

Terminologija

Tri važna termina koje koriste programeri u GitHub.com okruženju su fork, pull request i merge.

Fork je spremište koje je kopirano sa računa jednog učesnika na račun drugog. Ovaj alat omogućava programeru da izvrši izmjene bez utjecaja na izvorni kod.

Budući da je GitHub intuitivan i jednostavan za korištenje, a njegovi alati za kontrolu verzija korisni su za suradnju, resurs je postao popularan među stručnjacima različitih područja, uključujući one koji nisu programeri. Konkretno, počeli su ga koristiti za rad na dokumentima i razvoj multimedije. Na primjer, dokumentacijski projekti, resursi za učenje i druge vrste rada u kojima korisnici mogu komunicirati na mreži i raditi zajedno. GitLab je alternativa GitHub.com otvorenog koda.

Proizvodi i karakteristike

Pored poznatog proizvoda GitHub.com, osnivač SaaS-a nudi on-premises verziju. GitHub Enterprise podržava integrisana razvojna okruženja, integrisane alate i razne aplikacije i usluge trećih strana. Resurs nudi povećanu sigurnost i mogućnosti provjere.

Ostali proizvodi i funkcije aplikacije uključuju:


Distribuirani sistemi kontrole verzija (DVCS) postepeno zamjenjuju centralizirane. Ako još niste koristili jedan od njih, sada je vrijeme da isprobate.

U ovom članku pokušat ću pokazati kako možete brzo početi eksperimentirati s git-om koristeći web stranicu github.com.

Ovaj članak neće raspravljati o razlikama između različitih DVCS-a. Takođe, rad sa git-om neće biti detaljno razmatran, postoji mnogo dobrih izvora o ovoj temi, koje ću dati na kraju članka.

Dakle, stranica github.com pozicionirana je kao usluga hostinga web projekata koristeći git sistem kontrole verzija, kao i društvena mreža za programere. Korisnici mogu kreirati neograničen broj spremišta, od kojih svako ima wiki, sistem za praćenje problema, mogućnost provođenja pregleda koda i još mnogo toga. GitHub je trenutno najpopularniji servis te vrste, ispred Sourceforgea i Google Codea.

Za projekte otvorenog koda korištenje stranice je besplatno. Ako trebate imati privatna spremišta, možete nadograditi na plaćeni plan:

Počnimo sa registracijom. Pratite link github.com/signup/free i unesite svoje podatke.
Nakon registracije, prelazimo na kontrolnu tablu našeg računa:

Sada nemamo niti jedno spremište, a možemo ili kreirati novo spremište, ili se račvati iz postojećeg nečijeg drugog spremišta i voditi svoju razvojnu granu. Zatim, ako želite, možete predložiti svoje izmjene autoru originalnog spremišta (Pull request).

Ali prvo, hajde da instaliramo git i konfigurišemo ga za rad sa sajtom.

Ako radite na Windows-u, preuzmite i instalirajte msysgit. Ovo je konzolna verzija git-a za Windows (dalje će priča biti bazirana na primjeru ovog OS-a).
Upute za MacOS X (eng)
Upute za Linux (eng)
Ne bi trebalo biti problema, samo kliknite Dalje svuda. Nakon instalacije, izaberite iz kontekstnog menija Git Bash Explorera:

Ili preko Git Bash.lnk u folderu sa instaliranim programom:

Svoje podatke i postavke prijeloma reda unosimo u konzolu:
git config --global user.name "vaše ime"
git config --global user.email "vaša e-pošta"
git config --global core.autocrlf true
git config --global core.safecrlf true

Usput, preporučujem da uzmete dobar interaktivni kurs o korištenju git-a s konzole. Kurs se završava za nekoliko sati i pruža potrebne osnovne vještine.

Za one koji preferiraju gui, postoji nekoliko takvih alata za rad sa git-om na Windows-u. Dva glavna su SmartGit (cross-platform) i TortoiseGit. Oba su dobra, a koju ćete koristiti stvar je ukusa. Opisaću rad sa TortoiseGit-om.
Za mak postoji i izbor giua.

  • Zvanični klijent sa GitHub-a je po mom mišljenju još uvijek prilično grub.
  • GitX - Meni se lično nije dopao
  • GitBox - većina prati mac-put, toplo preporučujem da ga isprobate

O git-u na ruskom:
“Uspješni model grananja za git” - prijevod dobrog engleskog članka
githowto.com interaktivni kurs o radu sa git-om sa konzole
“Zašto git” + diskusija
“Git za one koji migriraju sa SVN-a” + diskusija
“Timski rad u git-u” + diskusija
progit.org/book/ru Ruski prijevod knjige “Pro Git” (nije u potpunosti preveden)
uputstva-cheat sheet za početnike
serija postova “unutrašnjost git-a”
lib.custis.ru/%D0%9B%D0%B8%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB %D1%8C%D0%B4%D1%81_%D0%BE_GIT_%D0%BD%D0%B0_Google_Talks Linus Torvalds na git-u
knjiga "Čarolija Gita"

O git-u na engleskom:
knjige

  • progit.org/book knjiga “Pro Git”
  • rutracker.org/forum/viewtopic.php?t=2808582 knjiga “Kontrola verzija sa Gitom”, 2009, O"Reilly
  • book.git-scm.com knjiga “Git Community Book”
  • rutracker.org/forum/viewtopic.php?t=2808843 knjiga “Pragmatic Version Control Using Git”, 2008, T. Swicegood
  • rutracker.org/forum/viewtopic.php?t=3239579 knjiga “Pragmatic Guide to Git”, 2010, T. Swicegood. Git verzija koja se opisuje je 1.7.2.1. Knjiga u formatu na dvije stranice - problem/rješenje

Distribuirani sistemi kontrole verzija (DVCS) postepeno zamjenjuju centralizirane. Ako još niste koristili jedan od njih, sada je vrijeme da isprobate.

U ovom članku pokušat ću pokazati kako možete brzo početi eksperimentirati s git-om koristeći web stranicu github.com.

Ovaj članak neće raspravljati o razlikama između različitih DVCS-a. Takođe, rad sa git-om neće biti detaljno razmatran, postoji mnogo dobrih izvora o ovoj temi, koje ću dati na kraju članka.

Dakle, stranica github.com pozicionirana je kao usluga hostinga web projekata koristeći git sistem kontrole verzija, kao i društvena mreža za programere. Korisnici mogu kreirati neograničen broj spremišta, od kojih svako ima wiki, sistem za praćenje problema, mogućnost provođenja pregleda koda i još mnogo toga. GitHub je trenutno najpopularniji servis te vrste, nadmašujući Sourceforge i Google Code.

Za projekte otvorenog koda korištenje stranice je besplatno. Ako trebate imati privatna spremišta, možete nadograditi na plaćeni plan:

Počnimo sa registracijom. Pratite link github.com/signup/free i unesite svoje podatke.
Nakon registracije, prelazimo na kontrolnu tablu našeg računa:

Sada nemamo niti jedno spremište, a možemo ili kreirati novo spremište, ili se račvati iz postojećeg nečijeg drugog spremišta i voditi svoju razvojnu granu. Zatim, ako želite, možete predložiti svoje izmjene autoru originalnog spremišta (Pull request).

Ali prvo, hajde da instaliramo git i konfigurišemo ga za rad sa sajtom.

Ako radite na Windows-u, preuzmite i instalirajte msysgit. Ovo je konzolna verzija git-a za Windows (dalje će priča biti bazirana na primjeru ovog OS-a).
Upute za MacOS X (eng)
Upute za Linux (eng)
Ne bi trebalo biti problema, samo kliknite Dalje svuda. Nakon instalacije, izaberite iz kontekstnog menija Git Bash Explorera:

Ili preko Git Bash.lnk u folderu sa instaliranim programom:

Svoje podatke i postavke prijeloma reda unosimo u konzolu:
git config --global user.name "vaše ime"
git config --global user.email "vaša e-pošta"
git config --global core.autocrlf true
git config --global core.safecrlf true

Usput, preporučujem da uzmete dobar interaktivni kurs o korištenju git-a s konzole. Kurs se završava za nekoliko sati i pruža potrebne osnovne vještine.

Za one koji preferiraju gui, postoji nekoliko takvih alata za rad sa git-om na Windows-u. Dva glavna su SmartGit (cross-platform) i TortoiseGit. Oba su dobra, a koju ćete koristiti stvar je ukusa. Opisaću rad sa TortoiseGit-om.
Za mak postoji i izbor giua.

  • Zvanični klijent sa GitHub-a je po mom mišljenju još uvijek prilično grub.
  • GitX - Meni se lično nije dopao
  • GitBox - većina prati mac-put, toplo preporučujem da ga isprobate

O git-u na ruskom:
habrahabr.ru/blogs/Git/106912 “Uspješni model grananja za git” - prijevod dobrog engleskog članka
githowto.com interaktivni kurs o radu sa git-om sa konzole
habrahabr.ru/blogs/Git/106912 “Zašto git” + diskusija
habrahabr.ru/blogs/development/68341 “Git za one koji migriraju iz SVN-a” + diskusija
habrahabr.ru/blogs/Git/75990 “Timski rad u git-u” + diskusija
progit.org/book/ru Ruski prijevod knjige “Pro Git” (nije u potpunosti preveden)
habrahabr.ru/blogs/Git/123111 upute-varalica za početnike
serija postova “unutrašnjost git-a”
lib.custis.ru/%D0%9B%D0%B8%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB %D1%8C%D0%B4%D1%81_%D0%BE_GIT_%D0%BD%D0%B0_Google_Talks Linus Torvalds na git-u
habrahabr.ru/blogs/Git/80909 knjiga “Čarolija Gita”

O git-u na engleskom:
knjige

  • progit.org/book knjiga “Pro Git”
  • rutracker.org/forum/viewtopic.php?t=2808582 knjiga “Kontrola verzija sa Gitom”, 2009, O"Reilly
  • book.git-scm.com knjiga “Git Community Book”
  • rutracker.org/forum/viewtopic.php?t=2808843 knjiga “Pragmatic Version Control Using Git”, 2008, T. Swicegood
  • rutracker.org/forum/viewtopic.php?t=3239579 knjiga “Pragmatic Guide to Git”, 2010, T. Swicegood. Git verzija koja se opisuje je 1.7.2.1. Knjiga u formatu na dvije stranice - problem/rješenje
mob_info