Sumusulat ng iyong sariling mga kwento gamit ang git

Kamusta sa lahat 🙂 Bago magpatuloy sa mga teksto ng listahan ng order, nais kong ipagdiwang ang pagpapalabas ng git 2.16 sa pamamagitan ng pagpapasalamat sa bawat isa sa mga nagpadala ng isang patch at bawat isa sa mga gumagamit, sa kabuuan ay gusto namin ang 4000 linya sa pagitan ng mga pag-update at pagwawasto , na hindi masyadong nagsasalita ng aking unang bersyon, ngunit nagsasalita ito ng iyong kabutihan 🙂 Salamat! Ngayon, sasabihin ko sa iyo ang isang maliit na lihim, hanggang ngayon ay walang oras na hindi pa ako nakaupo upang sumulat ng isang artikulo at pinag-isipan ang tungkol dito, karaniwang nagsusulat lamang ako sa isang hilera, at pagkatapos ay ang mabuting butiki ay nagkakaroon ng kabaitan sa itama ang mga pagkakamali ko sa pagta-type 🙂 kaya salamat din sa kanya.

Hindi ito ang pinakamahusay kung pinag-uusapan natin ang tungkol sa pagsusulat ng mga artikulo, dapat ay dapat itong magkaroon ng isang layunin at magkakasama ng isang istraktura, at markahan ang maliliit na puntos at pagsusuri at iba pa atbp. Ngayon, hindi lamang ito nalalapat sa mga blog sa pangkalahatan, ngunit mahalaga sa isang software na nagpapanggap na mahusay 🙂 Para sa gawaing ito, at pagkatapos ng ilang mga problema sa software ng kontrol ng bersyon na ginamit sa pagpapaunlad ng kernel ilang taon na ang nakalilipas, ipinanganak ito git 🙂

Kung saan matututo git?

Ang dami ng dokumentasyon sa paligid ng git ay nakakagulat, kahit na kinuha lamang namin ang mga pahina ng tao na kasama ang pag-install, magkakaroon kami ng napakalawak na halaga ng pagbabasa. Personal kong hanapin ang git libro lubos na mahusay na dinisenyo, kahit na isinalin ko ang ilang mga segment ng seksyon 7, nawawala pa rin ang ilan, ngunit bigyan ako ng oras 😛 marahil sa buwang ito maaari kong isalin kung ano ang natitira sa seksyong iyon.

Anong ginagawa ni git?

Ang Git ay idinisenyo upang maging mabilis, mahusay, simple at upang suportahan ang malalaking karga ng impormasyon, pagkatapos ng lahat, nilikha ito ng komunidad ng kernel para sa kanilang software, na isa sa pinakamalaking pinagsamang mga gawa ng libreng software sa buong mundo at may daan-daang mga kontribusyon bawat oras sa isang base ng code na lumampas sa isang milyong mga linya.

Ang kagiliw-giliw na bagay tungkol sa git ay ang paraan nito ng pagpapanatili ng mga bersyon ng data. Sa mga nakaraang araw (iba pang mga programa sa kontrol sa bersyon) ay kumuha ng mga compress ng lahat ng mga mayroon nang mga file sa isang punto sa kasaysayan, tulad ng paggawa ng isang backup. Gumagawa si Git ng ibang diskarte, kapag gumaganap ng commit ang isang punto sa kasaysayan ay minarkahan, ang puntong iyon sa kasaysayan ay may isang serye ng mga pagbabago at gumagana, sa pagtatapos ng araw, ang lahat ng mga pagbabago ay pinagsama sa paglipas ng panahon at ang mga file ay nakuha upang mai-compress o markahan bilang mga milestones ng mga bersyon Dahil alam kong kumplikado ang lahat ng ito, dadalhin ka namin sa isang mahiwagang paglalakbay sa isang napaka-pangunahing halimbawa.

Maliit na proyekto ng calculamatics

Ang mga calculamatics ay magiging isang programa na makakahanap ng mga parisukat ng isang naibigay na numero, gagawin namin ito sa C at ito ay magiging kasing simple hangga't maaari, kaya huwag asahan ang maraming mga pagsusuri sa seguridad mula sa akin. Una ay lilikha kami ng isang lalagyan, gagawin ko ito sa Github upang pumatay ng dalawang ibon na may isang bato:

Pagmamay-ari Christopher Diaz Riveros

Nagdagdag kami ng ilang mga simpleng bagay tulad ng lisensya (napakahalaga kung nais mong protektahan ang iyong trabaho, sa aking kaso, pilitin silang ibahagi ang mga resulta kung nais nilang gamitin ito bilang isang batayan: P)

Pumunta na tayo sa ating mahal na terminal, git clone ay ang utos na responsable para sa pag-download ng lalagyan na matatagpuan sa url itinalaga at lumikha ng isang lokal na kopya sa aming computer.

Pagmamay-ari Christopher Diaz Riveros

Ngayon suriin natin git log ano ang nangyari sa kasaysayan ng aming proyekto:

Narito mayroon kaming maraming impormasyon sa iba't ibang mga kulay try subukan nating ipaliwanag ito:

ang unang dilaw na linya ay ang "gumawa ng barcode" bawat gumawa ay may sariling natatanging pagkakakilanlan, kung saan maaari kang gumawa ng maraming mga bagay, ngunit i-save namin ito para sa ibang pagkakataon. Ngayon meron na kami HEAD ng celeste at master berde Ito ang mga "pahiwatig" na ang kanilang pagpapaandar ay upang ituro ang kasalukuyang lokasyon ng ating kasaysayan (HEAD) at ang sangay na pinagtatrabahuhan namin sa aming computer (master).

origin/master ay ang katapat ng internet, origin ay ang default na pangalan na naitalaga sa aming URL, At master ay ang sangay kung saan ka nagtatrabaho ... upang mapanatili itong simple, ang mga mayroong / ay ang mga wala sa aming koponan, ngunit ang mga sanggunian sa kung ano ang nasa internet.

Pagkatapos mayroon kaming may-akda, ang petsa at oras at ang buod ng gumawa. Ito ay isang maliit na pagsusuri sa kung ano ang nangyari sa puntong iyon ng kasaysayan, napakahalaga sa maraming mga proyekto at maraming impormasyon na hinatulan. Tingnan natin nang malapitan kung ano ang nangyari sa pagbuo na may utos git show <código-de-commit>

Pagmamay-ari Christopher Diaz Riveros

Dadalhin kami ng utos ng git show sa screen na ito sa format ng patch, kung saan makikita mo kung ano ang naidagdag at kung ano ang naalis (kung may natanggal) sa oras na iyon sa kasaysayan, hanggang ngayon ipinapakita lamang sa atin na ang talaan .gitignore,README.mdLICENSE.

Bumaba na tayo sa negosyo, magsulat tayo ng isang file 🙂 lilikha kami ng unang milyahe sa ating kasaysayan 😀:

Pagmamay-ari Christopher Diaz Riveros

Sa madaling sabi, lilikha kami ng isang programa na nagpapakita sa amin ng bilang ng mga argumentong naipasa sa pagpapatupad nito, simpleng 🙂

Pagmamay-ari Christopher Diaz Riveros

Madali iyon 🙂 ngayon tingnan natin ang sumusunod na kapaki-pakinabang na utos: git status

Pagmamay-ari Christopher Diaz Riveros

Ang ilang uri ng kaluluwang may kaluluwa ay isinalin sa git upang madali itong sundin, narito mayroon kaming maraming kapaki-pakinabang na impormasyon, alam namin na nasa master branch kami, na-update kami sa origin/master(ang sangay ng Github), mayroon kaming mga hindi naka-track na file! at iyon upang idagdag ang mga ito kailangan nating gamitin git add, subukan natin 🙂

Pagmamay-ari Christopher Diaz Riveros

Ngayon mayroon kaming isang bagong berdeng espasyo, kung saan ang file na naidagdag namin sa lugar ng trabaho ay ipinapakita. Sa lugar na ito maaari naming pangkatin ang aming mga pagbabago upang makagawa ng isang pangako, ang paggawa ay binubuo ng isang milyahe sa buong kasaysayan ng aming proyekto, lilikha kami ng nakatuon 🙂 git commit

Pagmamay-ari Christopher Diaz Riveros

Maikling ipinaliwanag, ang dilaw na linya ay ang pamagat ng aming pangako, sumulat ako ng pangunahing.c para sa isang biswal na sanggunian lamang. Ang itim na teksto ay ang paliwanag sa mga pagbabagong nagawa mula noong nakaraang gumawa hanggang ngayon 🙂 nai-save namin ang file at makikita namin na nai-save ang aming nakatuon sa pagpapatala.

Pagmamay-ari Christopher Diaz Riveros

Ngayon makikita namin ang kasaysayan ng aming proyekto git log

Pagmamay-ari Christopher Diaz Riveros

Muli sa pag-log, nakikita natin ngayon na ang mga berde at pula na linya ay magkakaiba, iyon ay dahil sa aming computer, gumawa tayo sa itaas ng mga nakaimbak sa internet to ipagpapatuloy natin ang trabaho, ipagpalagay na ngayon nais kong magpakita ng mensahe kung sakaling naglalagay ang gumagamit ng higit sa isang pagtatalo sa programa (na maaaring magulo ang calculator 🙂)

Tulad ng nakikita natin, ang aming programa ay lumago nang marami 😀, ngayon mayroon kaming pagpapaandar imprimir_ayuda() na nagpapakita ng isang mensahe kung paano gamitin ang mga kalkulasyon, at sa bloke main() ngayon ay gumawa kami ng isang pagsusuri sa if(Isang bagay na makikita natin sa isang tutorial sa pagprogram sa ibang oras, sa ngayon kinakailangan lamang na malaman na kung higit sa 2 mga argument ang naipasok sa mga calculamatics, na natapos ang programa at ipinakita ang tulong. Ipatupad natin ito:

Pagmamay-ari Christopher Diaz Riveros

Tulad ng nakikita mo, inililimbag nito ngayon ang numero na naihatid sa halip na ang bilang ng mga argumento, ngunit hindi ko sinabi sa iyo dati 🙂 para sa mga mausisa echo $? ipinapakita ang exit code ng huling programa na naisakatuparan, na 1 dahil natapos ito sa error. Ngayon suriin natin kung paano ang ating kwento:

Pagmamay-ari Christopher Diaz Riveros

Ngayon alam namin na kami ay 1 nakatuon nang una sa Github, na ang file main.c ay nabago, lumikha tayo ng susunod na gumawa sa pamamagitan ng paggawa git add main.c  at pagkatapos ay git commit🙂

Pagmamay-ari Christopher Diaz Riveros

Ngayon kami ay medyo mas tiyak, dahil nagpatupad kami ng isang pagpapaandar at binago ang code ng pagpapatunay. Ngayong nai-save ito suriin natin ang ating huling pagbabago. Makikita natin ito sa git show HEAD

Pagmamay-ari Christopher Diaz Riveros

Ngayon ay makikita mo ang pula at berde na mga linya, naidagdag namin ang library stdlib.h, binago ang karamihan ng code at idinagdag ang pagpapaandar sa aming kwento.

Ngayon ay makikita na natin ang log: (git log)

Pagmamay-ari Christopher Diaz Riveros

Maaari naming makita na kami ay dalawang gumawa nang maaga sa bersyon ng Github, papantay-pantay namin nang kaunti ang marker 🙂 para sa ginagamit namin git push origin master

Sa sinasabi naming ito, ipadala ang aking mga pangako sa url origin sa sanga master

Pagmamay-ari Christopher Diaz Riveros

Binabati kita! Ngayon ang iyong mga pagbabago ay nasa Github, hindi ka ba naniniwala sa akin? repasuhin natin ito 😉

Pagmamay-ari Christopher Diaz Riveros

Ngayon mayroon kaming 3 commits sa Github 🙂

Buod

Kami ay nagalaw sa pinaka-pangunahing mga aspeto ng git, Ngayon ay makakalikha sila ng isang simpleng daloy ng trabaho sa kanilang mga proyekto, ito ay halos anuman sa lahat ng iba't ibang mga bagay na maaaring gawin sa git, ngunit tiyak na ito ang pinaka praktikal at pang-araw-araw na bagay para sa isang developer o blogger. Hindi pa namin naabot ang dulo ng calculator, ngunit iiwan namin ito sa ibang oras 😉 Maraming salamat sa pagpunta dito at inaasahan kong makakatulong ito sa iyo upang lumahok sa maraming mga proyekto reet Pagbati


7 na puna, iwan mo na ang iyo

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Pablo dijo

    Kumusta ... Hindi ko alam kung ikaw ay, ngunit hindi ko makita ang mga imahe sa ulat na ito ...

    Regards

  2.   Pablo dijo

    Ito ay isang problema sa aking browser. Nakakahiya sa inis.

  3.   Mundo ng Tecprog dijo

    Kailangan ko pang basahin ito nang mas detalyado, ako ay isang newbie.

  4.   Guillermo dijo

    Mahusay na artikulo upang magsimula sa git, bagaman inirerekumenda ko ang pagkuha ng mga tala upang maunawaan ang detalye.
    Ang isang pares ng mga bagay ay hindi malinaw sa akin:
    para saan ang pagpipilian Magdagdag ng .gignignore Ckahit na hulaan ko makikita ko ito kapag isinagawa ko ito,
    bakit kailangan mong gawing muli ang pagdaragdag main.c bago ang susunod na git commit, ang pagdaragdag ng main.c ay sabihin sa git upang ihambing ang file na iyon sa bersyon ng network? Hindi ba awtomatiko nitong inihambing ang lahat ng idinagdag na mga file para sa pagsubaybay?

    1.    ChrisADR dijo

      Kumusta Guillermo 🙂 mabuti na nakita mong kapaki-pakinabang upang sagutin ang iyong mga katanungan:

      Ang .gignignore ay isang file na nagsasabi sa git kung aling mga format o pattern ang hindi papansinin, sa kasong ito ang pagpili ng mga C sanhi .o mga file na hindi papansinin at iba pa na nabuo sa oras ng pagtitipon, na mabuti sapagkat kung hindi man mababaliw ang iyong git sa ngayon ng bawat pagtitipon at follow-up 🙂 maaari mong suriin ang maraming bilang ng mga format na tinanggal sa gitnang C template nito sa pamamagitan ng paggawa ng pusa o sa isang text editor.

      Bagaman masusubaybayan ng git ang bawat file na idinagdag sa gumaganang puno, kinakailangan na partikular na piliin kung aling mga file ang papasok sa susunod na gumawa, upang bigyan ka ng isang halimbawa, ipagpalagay na pinangunahan ka ng iyong trabaho na baguhin ang 5 magkakaibang mga file bago makita ang resulta. Kung nais mong maging medyo mas tiyak at ipaliwanag kung ano ang ginagawa sa bawat isa, maaari mong gawin ang magdagdag ng file1; git gumawa; git magdagdag ng file2; git gumawa… .3,4,5; git gumawa Sa ganitong paraan malinis ang iyong kwento at mahusay na tinukoy ang mga pagbabago. At kung sakaling kailangan mong baguhin ang isang bagay, o ibalik ang (mas advanced na mga paksa) maaari mong ibalik ang mga tukoy na bagay o magdagdag ng mga tukoy na bagay nang hindi binabago ang natitira.

      Inaasahan kong makakatulong ito 🙂 mga pagbati at salamat sa pagtatanong

    2.    ChrisADR dijo

      Ang PS: git add ay hindi nagsasabi na ihambing sa bersyon sa network, ngunit sa dating gumawa sa iyong linya ng trabaho, kung ito ay naging lokal (berde) ihahambing ito sa isang iyon, kung ito ay naging malayo (pula) ito ay ihambing sa iba pa. Linawin lang 😉

      1.    Guillermo dijo

        Perpekto, syempre nililinaw nito.