Razlika između predanosti i pritiska

Ako ste jedan od milijuna u zajednici programera, onda je najvjerojatnije već čuo za koncept kontrole verzija. To je moćan alat ili sustav koji vam pomaže da se brinete za svoj posao, omogućujući vam da se brzo krećete po datotekama, dokumentima i drugim zbirkama informacija vezanih uz vaš projekt. A na tržištu postoje brojni alati za takvu vrstu posla, kako vlasnički tako i s otvorenim kodom. Git je danas jedan od najpopularnijih i najkorištenijih sustava kontrole verzija u svijetu, a ogroman broj projekata oslanja se na Git za kontrolu verzija. Git je besplatni i otvoreni izvorni distributivni sustav kontrole dizajniran za praćenje promjena u izvornom kodu tijekom razvoja softvera.

Git projekt predstavljen je strukturom podataka koja se naziva spremište u kojem se pohranjuju sve informacije povezane s projektom, uključujući i cjelokupnu povijest projekta od njegovog nastanka. Prati sve promjene u datotekama tijekom vremena, gradeći vremensku traku dok nastavljate s projektom. Repozitorij se pak sastoji od niza pojedinačnih snimaka sadržaja projekta - zbirke datoteka i spremišta - koji se nazivaju commities. Kad želite svoj projekt podijeliti sa svijetom, morate ga gurnuti prema daljinskom upravljaču kojem imate pristup pisanju. Vaše lokalne grane se ne sinkroniziraju automatski s udaljenim spremištima - morate eksplicitno gurnuti grane koje želite dijeliti.

Što je predanost?

Git svoje podatke smatra više skupom snimaka, poput sustava mini datoteka ili verzija projekta koji se zove commits. Svaki put kada u bilo kojem trenutku počinite ili spremite stanje svog projekta, Git u osnovi pravi trenutni izgled vaših datoteka i pohranjuje referencu na taj snimak. Objekt počinjenja sadrži metapodatke za svaku promjenu koja je izvršena u spremištu, uključujući autora, počinitelja, datum počinjenja i poruku dnevnika. Svaka naredba upućuje na objekt stabla koji bilježi stanje u spremištu u tom trenutku kada je počinjenje počinjeno, sve u jednom cjelovitom snimku. Dok tijekom koda unosite promjene u kod, stvarate pregršt pošiljaka - zasebna obveza za svaku promjenu koju unesete. Git dodjeljuje svakom entitetu jedinstveni ID koji prati što, kada i tko od promjena koje ste napravili.

Što je Push?

Svaki programer ima svoje privatno spremište za praćenje njihovih promjena. Promjene unesete lokalno i kad ste spremni podijeliti ih s drugim programerima, vratite ih u spremište koje dijelite svi. Ukloni sprema promjene koje ste napravili samo u lokalnom spremištu, ali ne i u udaljenom spremištu. Obveze se ne sinkroniziraju automatski u udaljeno spremište - morate izričito pritisnuti obveze koje želite dijeliti. Kad koristite naredbu push, izmjene primijenite u uzlaznom spremištu. Svaki projekt otvorenog koda ima svoj način prihvaćanja promjena. Neki projekti koriste potpuno distribuirani sustav kontrole verzija u kojem samo jedna osoba može gurnuti promjene u glavno spremište, dok postoji zajednički model spremišta u kojem se svi programeri mogu prebaciti u zajedničko spremište.

Razlika između predanosti i pritiska

Osnove

- Guranje dolazi nakon počinjenja. Git počiniti zapise i prati promjene u spremištu sa svakom točki počinjenja na objekt stabla koji bilježi stanje u spremištu u tom trenutku kada je počinjenje počinjeno, sve u jednom cjelovitom snimku. No, naredba sprema promjene samo u lokalno spremište, ali ne i na udaljeno spremište. Git push ažurira vaše počinjene promjene i omogućuje vam da ih pošaljete u udaljeno skladište gdje im mogu pristupiti svi programeri. Kada koristite naredbu push, ona jednostavno ažurira vaše promjene u uzlaznom spremištu.

naredba

- Git počinci su lokalnog značenja i bilježe se samo na stroju na kojem se doista događaju. Naredba "git počinite" koristi se za navođenje Git-u da spremi vaše promjene u lokalnom spremištu, a Gitu morate posebno reći koje promjene želite uključiti u obveze prije upotrebe naredbe "git počiniti". Možete upotrijebiti naredbu "git push" da biste gurnuli stavke iz lokalnog spremišta u udaljeno skladište. Naredba "push" ažurira nove lokalne obaveze na udaljenom poslužitelju. Potisak uzima dva argumenta: udaljeni naziv (izvor) i naziv podružnice (glavni).

Predavanje protiv pritiska: Usporedni grafikon

Sažetak predanosti i pritiska

Ukratko, počinjenje je temeljna jedinica promjene u Gitu. Za razliku od drugih modela centraliziranog upravljanja verzijama, Git smatra svoje podatke više kao skup snimaka koji se nazivaju commits. Oni su poput snimke cjelokupnog sadržaja spremišta, zajedno sa svim informacijama koje se odnose na projekt i odnos ovog stanja spremišta u odnosu na ostala snimljena stanja kako se sadržaj razvijao s vremenom. Objekt počinjenja sadrži metapodatke za svaku promjenu koja je izvršena u spremištu, uključujući autora, počinitelja, datum počinjenja i poruku dnevnika. No, snimanje sprema promjene samo u lokalno spremište, ali ne i na udaljeno spremište. Git push ažurira vaše počinjene promjene i omogućuje vam da ih pošaljete u udaljeno skladište gdje im mogu pristupiti svi programeri.