Ahoj všichni 🙂 Než budete pokračovat v textech seznamu objednávek, chci oslavit vydání git 2.16 poděkováním každému z těch, kteří poslali opravu, a každému z uživatelů, celkem jsme měli mezi aktualizacemi a opravami 4000 řádků , který o mé první verzi moc nehovoří, ale mluví o vaší laskavosti 🙂 Děkuji! Nyní vám řeknu malé tajemství, až dosud neexistovala doba, kdy jsem si nesadl k napsání článku a hodně jsem o tom přemýšlel, obvykle píšu jen za sebou, a pak si dobrý ještěr vezme laskavost opravte mé překlepy 🙂 takže díky němu taky.
To není nejlepší, když mluvíme o psaní článků, údajně by to mělo mít cíl a dát dohromady strukturu a označit malé body a recenze atd. Atd ... Nyní se to netýká pouze blogů obecně, ale je to zásadní software, který předstírá, že je dobrý 🙂 Pro tento úkol a po několika problémech se softwarem pro správu verzí, který byl použit před několika lety při vývoji jádra, se narodil git
????
Kde se učit git
?
Množství dokumentace kolem git je ohromující, i kdybychom si jen vzali manuálové stránky, které byly dodány s instalací, měli bychom obrovské množství čtení. Osobně najdu kniha git docela dobře navržený, i když jsem přeložil některé segmenty sekce 7, ještě jich pár mám, ale dejte mi čas 😛 možná v tomto měsíci mohu přeložit, co zbylo z této sekce.
Co dělá git?
Git je navržen tak, aby byl rychlý, efektivní, jednoduchý a aby podporoval velké množství informací, koneckonců komunita jádra jej vytvořila pro svůj software, který je jedním z největších společných děl svobodného softwaru na světě a má stovky příspěvků za hodinu v kódové základně, která přesahuje jeden milion řádků.
Zajímavostí gitu je jeho způsob udržování verzí dat. V minulosti (jiné programy pro správu verzí) prováděly komprese všech existujících souborů v určitém bodě historie, například vytváření souboru zálohování. Git používá jiný přístup, když provádí commit
bod v historii je označen, tento bod v historii má řadu úprav a prací, na konci dne jsou všechny úpravy spojeny v průběhu času a soubory jsou získány, aby bylo možné je komprimovat nebo označit jako milníky verze. Protože vím, že to všechno zní komplikovaně, vezmu vás na magickou cestu v super základním příkladu.
Malý projekt kalkulačky
Výpočet bude program, který najde druhou mocninu daného čísla, uděláme to v C a bude to co nejjednodušší, takže ode mě nečekejte spoustu bezpečnostních kontrol. Nejprve vytvoříme úložiště, udělám to pomocí Githubu, abych zabil dva ptáky jedním kamenem:
Přidali jsme několik jednoduchých věcí, jako je licence (velmi důležité, pokud chcete chránit svou práci, v mém případě je přinutit, aby sdíleli výsledky, pokud ji chtějí použít jako základ: P)
Nyní pojďme k našemu milému terminálu git clone
je příkaz, který je zodpovědný za stahování úložiště umístěného v url
přidělen a vytvořit místní kopii na našem počítači.
Pojďme to zkontrolovat git log
co se stalo v historii našeho projektu:
Zde máme spoustu informací v různých barvách 🙂 zkusme to vysvětlit:
první žlutá čára je „čárový kód potvrzení“, každý potvrzení má svůj vlastní jedinečný identifikátor, se kterým můžete dělat spoustu věcí, ale necháme si ho na později. Nyní máme HEAD
Celeste a master
zelená. Jedná se o „ukazatele“, jejichž funkcí je ukazovat na aktuální umístění naší historie (HEAD
) a větev, na které pracujeme na našem počítači (master
).
origin/master
je protějškem internetu, origin
je výchozí název, který byl přiřazen našemu URL
A master
je obor, ve kterém pracujete ... aby to bylo jednoduché, ti, kteří mají /
jsou ti, kteří nejsou v našem týmu, ale jsou odkazy na to, co je na internetu.
Pak máme autora, datum a čas a shrnutí potvrzení. Toto je malá recenze toho, co se v té době stalo v historii, velmi důležitá u mnoha projektů a je odsouzena spousta informací. Podívejme se blíže na to, co se stalo v příkazu s příkazem git show <código-de-commit>
Příkaz git show nás přenese na tuto obrazovku ve formátu patchů, kde můžete vidět, co bylo v té době v historii přidáno a co bylo odstraněno (pokud bylo něco odstraněno), zatím nám ukazuje pouze to, že evidence .gitignore
,README.md
y LICENSE
.
Pojďme nyní k podnikání, vytvořme soubor 🙂 vytvoříme první milník v naší historii 😀:
Stručně řečeno, vytvoříme program, který nám ukáže počet argumentů předaných při jeho provádění, jednoduché 🙂
To bylo snadné 🙂 teď se podívejme na následující užitečný příkaz: git status
Nějaká laskavá duše přeložila git, aby bylo snadné ho sledovat, zde máme spoustu užitečných informací, víme, že jsme v hlavní větvi, kterou jsme aktualizovali origin/master
(větev Github), máme nesledované soubory! a že k jejich přidání musíme použít git add
, zkusme to 🙂
Nyní máme nový zelený prostor, ve kterém je zobrazen soubor, který jsme přidali do pracovní oblasti. Na tomto místě můžeme seskupit naše změny, abychom mohli provést potvrzení, potvrzení se skládá z milníku v celé historii našeho projektu, vytvoříme potvrzení 🙂 git commit
Stručně vysvětleno, žlutá čára je název našeho potvrzení, píšu main.c pro pouhou vizuální referenci. Černý text je vysvětlením změn provedených od předchozího potvrzení do současnosti 🙂 soubor uložíme a uvidíme, jak se naše potvrzení uloží do registru.
Nyní uvidíme historii našeho projektu s git log
Znovu v protokolu nyní vidíme, že se zelené a červené čáry lišily, je to proto, že v našem počítači jsme jeden závazek nad těmi, které jsou uloženy na internetu 🙂 budeme pokračovat v práci, předpokládejme, že teď chci ukázat zpráva v případě, že uživatel vloží do programu více argumentů (což by kalkulačku zmátlo 🙂)
Jak vidíme, náš program se hodně rozrostl 😀, nyní máme funkci imprimir_ayuda()
který zobrazí zprávu o tom, jak používat výpočty, a v bloku main()
nyní provádíme kontrolu s if
(Něco, co uvidíme v tutoriálu k programování jindy, nyní je pouze nutné vědět, že pokud jsou do kalkulačky zadány více než 2 argumenty, program skončí a zobrazí se nápověda. Provedeme to:
Jak vidíte, nyní místo počtu argumentů vytiskne číslo, které bylo doručeno, ale to jsem vám předtím neřekl 🙂 pro zvědavé echo $?
ukazuje výstupní kód posledního provedeného programu, kterým je 1
protože to skončilo omylem. Nyní se podívejme, jak náš příběh pokračuje:
Nyní víme, že jsme o 1 potvrzení před Githubem, že soubor main.c
byl upraven, vytvořme další potvrzení provedením git add main.c
a pak git commit
????
Nyní jsme byli trochu konkrétnější, protože jsme implementovali funkci a změnili ověřovací kód. Nyní, když to bylo uloženo, pojďme zkontrolovat naši poslední změnu. Můžeme to vidět s git show HEAD
Nyní můžete vidět červené a zelené čáry, přidali jsme knihovnu stdlib.h
, upravil velkou část kódu a přidal funkci do našeho příběhu.
Nyní uvidíme protokol: (git log
)
Vidíme, že před verzí Github jsme o dva revize, budeme značku trochu vyrovnávat 🙂 k tomu použijeme git push origin master
Tímto říkáme, pošlete mé závazky na adresu URL origin
na větvi master
Gratulujeme! Nyní jsou vaše změny na Githubu, nevěříte mi? přezkoumejme to 😉
Nyní máme 3 závazky na Githubu 🙂
Shrnutí
Dotkli jsme se nejzákladnějších aspektů git
„Nyní mohou ve svých projektech vytvořit jednoduchý pracovní postup, což je téměř nic ze všech nejrůznějších věcí, které lze pomocí git dělat, ale je to určitě nejpraktičtější a každodenní věc pro vývojáře nebo bloggera. Nedošli jsme na konec kalkulačky, ale necháme to na jindy 😉 Děkuji vám, že jste se sem dostali, a doufám, že vám pomůže účastnit se několika projektů 😀 Zdravím
Dobrý den ... nevím, jestli ano, ale nevidím obrázky v této zprávě ...
pozdravy
Došlo k problému s mým prohlížečem. Omluvám se za nepříjemnost.
Stále si to musím přečíst podrobněji, jsem nováček.
Skvělý článek pro začátek s gitem, i když doporučuji dělat si poznámky, abyste porozuměli detailům.
Pár věcí mi nebylo jasné:
k čemu je ta možnost Přidat .gitignore C.i když si myslím, že to uvidím, až to procvičím,
Proč musí být git add main.c znovu provedeno před dalším potvrzením git, přidá main.c git, aby porovnal tento soubor s verzí v síti? Neporovnává automaticky všechny přidané soubory pro sledování?
Dobrý den Guillermo 🙂 je dobré, že jste považovali za užitečné odpovědět na vaše otázky:
.gitignore je soubor, který sděluje gitu, které formáty nebo vzory má ignorovat, v tomto případě výběr C způsobí ignorování .o souborů a dalších, které se generují v době kompilace, což je dobré, protože jinak by se váš git v tuto chvíli zbláznil z každé kompilace a následných kroků 🙂 můžete zkontrolovat velké množství formátů, které git vynechá ve své šabloně C, pomocí kočky nebo textového editoru.
Ačkoli git bude sledovat každý soubor přidaný do pracovního stromu, je nutné konkrétně vybrat, které soubory vstoupí do dalšího potvrzení, abychom vám poskytli příklad, předpokládejme, že vás vaše práce dříve vedla k úpravě 5 různých souborů být schopen vidět výsledek. Pokud chcete být trochu konkrétnější a vysvětlit, co se v každém z nich dělá, můžete udělat git add file1; git commit; git add file2; git commit… .3,4,5; git commit. Tímto způsobem je váš příběh čistý a změny dobře definované. A v případě, že budete muset něco změnit nebo se vrátit (pokročilejší témata), můžete vrátit konkrétní věci nebo přidat konkrétní věci, aniž byste změnili zbytek.
Doufám, že to pomůže 🙂 pozdravy a poděkování za dotaz
PS: git add neříká, aby se porovnával s verzí v síti, ale s předchozím odevzdáním ve vaší linii práce, pokud to bylo místní (zelené), porovná to s touto, pokud to bylo vzdálené (červené), bude srovnávat s tím druhým. Jen pro upřesnění 😉
Perfektní, samozřejmě to objasňuje.