Hei kaikki 🙂 Ennen kuin jatkan tilausluettelon teksteihin, haluan juhlia git 2.16: n julkaisua kiittämällä kaikkia korjaustiedoston lähettäjiä ja kaikkia käyttäjiä. Yhteensä päivitysten ja korjausten välillä oli noin 4000 riviä , joka ei puhu kovin paljon ensimmäisestä versiostani, mutta puhuu ystävällisyydestäsi 🙂 Kiitos! Kerron nyt sinulle pienen salaisuuden, tähän asti ei ole ollut aikaa, jolloin en olisi istunut kirjoittamaan artikkelia ja ajatellut siitä paljon, yleensä kirjoitan vain peräkkäin, ja sitten hyvä lisko suhtautuu ystävällisesti korjaa kirjoitusvirheet 🙂 joten kiitos myös hänelle.
Tämä ei ole parasta, kun puhumme artikkeleiden kirjoittamisesta, sillä oletettavasti sillä pitäisi olla tavoite ja rakentaa rakenne sekä merkitä pienet kohdat ja arvostelut jne. Jne. ... Tämä ei koske vain blogeja yleensä, mutta on välttämätöntä myös ohjelmisto, joka teeskentelee olevansa hyvä 🙂 Tätä tehtävää varten ja sen jälkeen, kun muutama vuosi sitten ytimen kehityksessä käytetyn versionhallintaohjelmiston kanssa oli joitain ongelmia, se syntyi git
🙂
Mistä oppia git
?
Git-dokumentaation määrä on huikea, vaikka ottaisimme vain asennuksen mukana toimitetut man-sivut, meillä olisi valtava määrä lukemista. Henkilökohtaisesti löydän git-kirja melko hyvin suunniteltu, vaikka olenkin kääntänyt joitain osan 7 segmenteistä, puuttuu vielä muutama, mutta anna minulle aikaa 😛 Ehkä tässä kuussa voin kääntää mitä jäljellä on tästä osasta.
Mitä git tekee?
Git on suunniteltu nopeaksi, tehokkaaksi, yksinkertaiseksi ja tukemaan suuria tietomääriä, ja loppujen lopuksi ytimen yhteisö loi sen ohjelmistoilleen, joka on yksi suurimmista vapaiden ohjelmistojen yhteisistä teoksista maailmassa ja jolla on satoja tunnissa suoritettavia maksuja koodikannassa, joka ylittää miljoonan rivin.
Mielenkiintoinen asia gitissä on sen tapa ylläpitää tietoversioita. Vanhoina aikoina (muut versionhallintaohjelmat) pakattiin kaikki olemassa olevat tiedostot pakattuina historian vaiheessa, kuten varmuuskopio. Git käyttää erilaista lähestymistapaa suoritettaessa a commit
historian piste on merkitty, sillä historian pisteellä on joukko muutoksia ja toimii, päivän päätteeksi kaikki muutokset kootaan ajan myötä ja tiedostot saadaan, jotta ne voidaan pakata tai merkitä virstanpylväiksi. versiot. Koska tiedän, että tämä kaikki kuulostaa monimutkaiselta, aion viedä sinut maagiselle matkalle superperusesimerkillä.
Pieni laskentaprojekti
Laskentaohjelma on ohjelma, joka löytää tietyn luvun neliöt, teemme sen C-muodossa ja se on mahdollisimman yksinkertainen, joten älä odota minulta paljon turvatarkastuksia. Ensin aiomme luoda tietovaraston, teen sen Githubin kanssa tappaakseni kaksi lintua yhdellä kivellä:
Olemme lisänneet pari melko yksinkertaista asiaa, kuten lisenssi (erittäin tärkeä, jos haluat suojata työsi, pakota heidät tapauksessani jakamaan tulokset, jos he haluavat käyttää sitä pohjana: P)
Mennään nyt rakkaaseen terminaaliin, git clone
on komento, joka on vastuussa url
määritetty ja luotava paikallinen kopio tietokoneellemme.
Tarkastellaan nyt git log
mitä projektin historiassa on tapahtunut:
Täällä meillä on paljon tietoa eri väreillä 🙂 yritetään selittää se:
ensimmäinen keltainen viiva on "sitoutumisviivakoodi", jokaisella sitoutumisella on oma yksilöllinen tunniste, jolla voit tehdä paljon asioita, mutta tallennamme sen myöhempää käyttöä varten. Nyt meillä on HEAD
Celesten ja master
vihreä. Nämä ovat "osoittimia", niiden tehtävänä on osoittaa historiamme nykyinen sijainti (HEAD
) ja haara, jota työskentelemme tietokoneellamme (master
).
origin/master
on Internetin vastine, origin
on oletusnimi, joka on annettu meille URL
Ja master
on haara, jolla työskentelet ... pitääkseen sen yksinkertaisena, niillä, joilla on /
ovat niitä, jotka eivät ole tiimissämme, mutta viittaavat Internetiin.
Sitten meillä on kirjoittaja, päivämäärä ja kellonaika ja sitoutumisyhteenveto. Tämä on pieni katsaus historian tuolloin tapahtuneeseen, erittäin tärkeä monissa projekteissa ja on tuomittu paljon tietoa. Katsotaanpa tarkemmin mitä komennossa tapahtui komennolla git show <código-de-commit>
Git show -komento vie meidät tähän näyttöön korjaustiedostomuodossa, josta näet, mitä on lisätty ja mikä on poistettu (jos jotain on poistettu) tuolloin historiassa, toistaiseksi se vain osoittaa meille, että tietueet .gitignore
,README.md
y LICENSE
.
Aloitetaan nyt asioista, kirjoitetaan tiedosto create luomme historiamme ensimmäisen virstanpylvään 😀:
Lyhyesti sanottuna aiomme luoda ohjelman, joka näyttää meille sen suorittamisen yhteydessä annettujen argumenttien määrän, yksinkertainen 🙂
Se oli helppoa 🙂 nyt katsotaan seuraava hyödyllinen komento: git status
Jonkinlainen sydämellinen sielu on kääntänyt gitin helpottamaan seuraamista, täällä meillä on paljon hyödyllistä tietoa, tiedämme, että olemme päähaarassa, että meidät päivitetään origin/master
(Github-haara), meillä on jäljittelemättömiä tiedostoja! ja että niiden lisäämiseksi meidän on käytettävä git add
, kokeillaan 🙂
Nyt meillä on uusi viheralue, jossa työalueelle lisäämämme tiedosto näkyy. Tässä paikassa voimme ryhmitellä muutokset, jotta voimme tehdä sitoumuksen, sitoutuminen koostuu virstanpylväästä projektin historian ajan, aiomme luoda sitoumuksen 🙂 git commit
Lyhyesti selitettynä, keltainen viiva on sitoutumisemme otsikko, kirjoitan main.c pelkkään visuaaliseen viitteeseen. Musta teksti on selitys edellisestä sitoutumisesta tähän asti tehtyihin muutoksiin 🙂 tallennamme tiedoston ja näemme sitoutumisemme tallennettu rekisteriin.
Nyt aiomme nähdä projektimme historian git log
Jälleen lokista, nyt voimme nähdä, että vihreät ja punaiset viivat ovat eronneet, koska tietokoneessamme olemme sitoutuneet Internetiin tallennettujen yläpuolelle to jatkamme työtä, oletetaan, että nyt haluan näyttää viesti, jos käyttäjä lisää useita argumentteja ohjelmaan (mikä tekisi laskimen sekavaksi used)
Kuten näemme, ohjelmamme on kasvanut paljon 😀, nyt meillä on toiminto imprimir_ayuda()
joka näyttää sanoman laskelmien käytöstä ja lohkossa main()
nyt teemme tarkistuksen if
(Jotain, jonka näemme ohjelmointioppaassa toisinaan, toistaiseksi on vain tiedettävä, että jos laskentatiedostoon syötetään yli 2 argumenttia, ohjelma päättyy ja apu näytetään. Suoritetaan se:
Kuten näette, se tulostaa nyt toimitetun numeron argumenttien lukumäärän sijaan, mutta jota en ollut sanonut sinulle aiemmin 🙂 uteliaille echo $?
näyttää viimeksi suoritetun ohjelman poistumiskoodin, joka on 1
koska se on päättynyt virheellisesti. Katsotaan nyt, kuinka tarinamme sujuu:
Nyt tiedämme, että olemme yksi sitoutunut edellä Github, että tiedosto main.c
on muokattu, luodaan seuraava sitoutuminen tekemällä git add main.c
y luego git commit
🙂
Nyt olemme olleet hieman tarkempia, koska olemme ottaneet käyttöön toiminnon ja muuttaneet validointikoodia. Nyt kun se on tallennettu, tarkistamme viimeisimmän muutoksemme. Voimme nähdä sen git show HEAD
Nyt näet punaiset ja vihreät viivat, olemme lisänneet kirjaston stdlib.h
, muutti suurta osaa koodista ja lisäsi toiminnon tarinallemme.
Nyt aiomme nähdä lokin: (git log
)
Voimme nähdä, että olemme kaksi sitoutumista Github-version edessä, tasoitamme merkin hieman 🙂 sitä varten git push origin master
Tällä sanomme, lähetä sitoumukseni URL-osoitteeseen origin
oksalla master
Onnittelut! Nyt muutokset ovat Githubissa, etkö usko minua? tarkistetaan se 😉
Nyt meillä on 3 sitoutumista Githubiin 🙂
Yhteenveto
Olemme koskeneet git
, nyt he voivat luoda yksinkertaisen työnkulun projekteihinsa, tämä on tuskin mitään kaikista monista asioista, jotka voidaan tehdä gitillä, mutta se on varmasti käytännöllisin ja jokapäiväinen asia kehittäjälle tai bloggaajalle. Emme ole vielä laskimen lopussa, mutta aiomme jättää sen uudeksi ajaksi 😉 Kiitos paljon saapumisestasi ja toivon, että se auttaa sinua osallistumaan useisiin projekteihin 😀 Terveisiä
Hei ... En tiedä oletko, mutta en näe tämän raportin kuvia ...
terveiset
Se oli ongelma selaimessani. Häpeä ärsytyksestä.
Minun täytyy silti lukea se tarkemmin, olen aloittelija.
Loistava artikkeli aluksi gitillä, vaikka suosittelen tekemään muistiinpanoja yksityiskohtien ymmärtämiseksi.
Pari asiaa ei ole ollut minulle selvää:
mihin vaihtoehto on Lisää .gitignore Cvaikka luulen sen näkevän kun harjoitan sitä,
miksi sinun on tehtävä uudestaan git add main.c ennen seuraavaa git-sitoutumista, lisääkö main.c käskyn git: tä verrata kyseistä tiedostoa verkkoversioon? Eikö se vertaa kaikkia lisättyjä tiedostoja automaattisesti seurantaan?
Hei Guillermo 🙂 on hyvä, että pidit siitä hyödyllisenä vastaamaan kysymyksiisi:
.gitignore on tiedosto, joka kertoo git: lle, mitkä tiedostomuodot tai kuviot ohitetaan, tässä tapauksessa C: n valinta ohittaa .o-tiedostot ja muut, jotka syntyvät kokoamisajankohtana, mikä on hyvä, koska muuten gitisi menisi hulluksi heti jokaisesta kokoelmasta ja seurannasta 🙂 voit tarkistaa C-mallissa jättämättömien muotojen suuren määrän tekemällä kissan tai tekstieditorilla.
Vaikka git seuraa kaikkia työpuun lisättyjä tiedostoja, on kuitenkin valittava erikseen, mitkä tiedostot tulevat seuraavaan sitoutumiseen, antamaan sinulle esimerkki. Oletetaan, että työsi on johtanut sinut muokkaamaan 5 erilaista tiedostoa ennen nähdä tuloksen. Jos haluat olla hieman tarkempi ja selittää, mitä jokaisessa tehdään, voit tehdä git add file1; git-sitoutuminen; git-tiedosto2; git-sitoutuminen ... git sitoutua. Tällä tavalla tarinasi on puhdas ja muutokset hyvin määritelty. Ja jos joudut muuttamaan jotain tai palauttamaan (edistyneemmät aiheet), voit palauttaa tiettyjä asioita tai lisätä tiettyjä asioita muuttamatta loput.
Toivottavasti se auttaa 🙂 terveisiä ja kiitoksia kysymyksestä
PS: git add ei sano vertaa verkkoversioon, mutta työsi edelliseen sitoumukseen, jos se on ollut paikallinen (vihreä), se vertaa sitä siihen, jos se on ollut kauko (punainen) se vertaa siihen toiseen. Vain selventää 😉
Täydellinen, tietysti se selventää.