Rakstot savus stāstus ar asprātību

Sveiki, visi continuing Pirms turpināt pasūtījumu saraksta tekstus, es vēlos atzīmēt git 2.16 izlaišanu, pateicoties katram no tiem, kas nosūtīja plāksteri, un katram no lietotājiem. Kopumā starp atjauninājumiem un labojumiem mums bija kā 4000 rindiņu , kas gan nerunā par manu pirmo versiju, taču runā par jūsu laipnību 🙂 Paldies! Tagad es jums pastāstīšu nelielu noslēpumu, līdz šim nav bijis laika, kad es nebūtu apsēdies rakstīt rakstu un daudz par to domājis, parasti es vienkārši rakstu pēc kārtas, un tad labā ķirzaka izturas pret izlabo manas drukas kļūdas 🙂 tāpēc paldies arī viņam.

Tas nav labākais, kad mēs runājam par rakstu rakstīšanu, domājams, ka tam vajadzētu būt mērķim un veidot struktūru, kā arī atzīmēt mazus punktus un pārskatus utt. Utt. Tagad tas attiecas ne tikai uz emuāriem kopumā, bet arī tas ir būtiski programmatūra, kas izliekas par labu 🙂 Lai veiktu šo uzdevumu, un pēc dažām problēmām ar versijas vadības programmatūru, kas pirms dažiem gadiem tika izmantota kodola izstrādē, tā piedzima git ????

Kur mācīties git?

Dokumentācijas apjoms ap git ir satriecošs, pat ja mēs vienkārši paņemtu instalācijas komplektācijā iekļautās rokasgrāmatas, mums būtu ļoti daudz lasāmu. Es personīgi atrodu git grāmata diezgan labi izstrādāts, pat es esmu iztulkojis dažus no 7. sadaļas segmentiem, man joprojām trūkst daži, bet dodiet man laiku 😛 varbūt šajā mēnesī es varu tulkot to, kas palicis pāri no šīs sadaļas.

Ko dara git?

Git ir izstrādāts, lai būtu ātrs, efektīvs, vienkāršs un atbalstītu lielu informācijas apjomu, galu galā kodola kopiena to izveidoja savai programmatūrai, kas ir viens no lielākajiem brīvās programmatūras kopdarbiem pasaulē un kurā ir simtiem iemaksu stundā kodu bāzē, kas pārsniedz vienu miljonu rindu.

Interesanta lieta par git ir veids, kā uzturēt datu versijas. Agrāk (citas versiju vadības programmas) vēsturē tika ņemti visu esošo failu saspiešanas gadījumi, piemēram, izveidojot rezerves. Git izmanto citu pieeju, veicot a commit ir atzīmēts vēstures punkts, šim vēstures punktam ir virkne modifikāciju un darbojas, dienas beigās visas modifikācijas laika gaitā tiek saliktas kopā un iegūti faili, lai tos varētu saspiest vai atzīmēt kā atskaites punktus. versijas. Tā kā es zinu, ka tas viss izklausās sarežģīti, es vedīšu jūs uz burvju ceļojumu ar superpamatnovadu.

Mazs kalkulātikas projekts

Calculamatics būs programma, kas atradīs norādītā skaitļa kvadrātus, mēs to izdarīsim C un tas būs pēc iespējas vienkāršāk, tāpēc negaidiet no manis daudz drošības pārbaudes. Vispirms mēs izveidosim repozitoriju, es to darīšu kopā ar Gitubu, lai nogalinātu divus putnus ar vienu akmeni:

Pašu. Kristofers Diazs Riveross

Mēs esam pievienojuši pāris diezgan vienkāršas lietas, piemēram, licenci (ļoti svarīgi, ja vēlaties aizsargāt savu darbu, manā gadījumā piespiest viņus dalīties rezultātos, ja viņi vēlas to izmantot kā pamatu: P)

Tagad ejam uz mūsu dārgo termināli, git clone ir komanda, kas ir atbildīga par krātuves lejupielādi url piešķir un izveido lokālu kopiju mūsu datorā.

Pašu. Kristofers Diazs Riveross

Tagad pārbaudīsim git log kas noticis mūsu projekta vēsturē:

Šeit mums ir daudz informācijas dažādās krāsās: mēģināsim to izskaidrot:

pirmā dzeltenā līnija ir "izdarīt svītrkodu", katrai saistībai ir savs unikālais identifikators, ar kuru jūs varat veikt daudzas lietas, taču mēs to saglabāsim vēlākam laikam. Tagad mums ir HEAD no Celestes un master zaļa. Tie ir "norādes", kuru funkcija ir norādīt uz mūsu vēstures pašreizējo atrašanās vietu (HEAD) un filiāli, pie kura strādājam pie sava datora (master).

origin/master ir interneta līdzinieks, origin ir noklusējuma nosaukums, kas ir piešķirts mūsu URL, Un master ir filiāle, kurā jūs strādājat ... lai būtu vienkārši, tie, kuriem ir / ir tie, kas nav mūsu komandā, bet ir atsauces uz to, kas atrodas internetā.

Tad mums ir autors, datums un laiks un saistību kopsavilkums. Šis ir neliels pārskats par to, kas ir noticis tajā vēstures brīdī, ļoti svarīgs daudzos projektos, un ir daudz nosodītas informācijas. Apskatīsim tuvāk to, kas noticis ar komandu git show <código-de-commit>

Pašu. Kristofers Diazs Riveross

Komanda git show aizved mūs uz šo ekrānu plākstera formātā, kur jūs varat redzēt, kas tajā laikā vēsturē ir pievienots un kas ir noņemts (ja kaut kas būtu noņemts), līdz šim tas tikai parāda, ka ieraksti .gitignore,README.mdLICENSE.

Tagad ķeramies pie lietas, uzrakstīsim failu 🙂 mēs izveidosim pirmo pagrieziena punktu mūsu vēsturē 😀:

Pašu. Kristofers Diazs Riveross

Īsāk sakot, mēs izveidosim programmu, kas parāda vienkāršu 🙂 argumentu skaitu, kas tika nodoti, izpildot to

Pašu. Kristofers Diazs Riveross

Tas bija viegli, tagad redzēsim šādu noderīgu komandu: git status

Pašu. Kristofers Diazs Riveross

Kāda veida sirsnīga dvēsele ir iztulkojusi gitu, lai būtu viegli sekot, šeit mums ir daudz noderīgas informācijas, mēs zinām, ka mēs esam galvenajā nozarē, ar kuru mēs esam atjaunināti origin/master(Github filiāle), mums ir nesekoti faili! un to pievienošanai mums ir jāizmanto git add, mēģināsim 🙂

Pašu. Kristofers Diazs Riveross

Tagad mums ir jauna zaļā zona, kurā tiek parādīts fails, kuru esam pievienojuši darba zonai. Šajā vietā mēs varam sagrupēt izmaiņas, lai apņemtos, apņemšanās sastāv no atskaites punkta visā mūsu projekta vēsturē, mēs izveidosim saistības 🙂 git commit

Pašu. Kristofers Diazs Riveross

Īsumā izskaidrojot, dzeltenā līnija ir mūsu apņemšanās nosaukums, es rakstu main.c tikai vizuālas atsauces dēļ. Melnais teksts ir skaidrojums par izmaiņām, kas veiktas kopš iepriekšējās saistības līdz šim brīdim: mēs saglabājam failu un redzēsim, ka mūsu saistības ir saglabātas reģistrā.

Pašu. Kristofers Diazs Riveross

Tagad mēs iepazīsimies ar mūsu projekta vēsturi git log

Pašu. Kristofers Diazs Riveross

Atkal žurnālā, tagad mēs varam redzēt, ka zaļā un sarkanā līnijas ir atšķirušās, tas ir tāpēc, ka mūsu datorā mēs esam apņēmības pilni virs tiem, kas saglabāti internetā 🙂 mēs turpināsim darbu, pieņemsim, ka tagad es vēlos parādīt ziņojums, ja lietotājs programmā ievieto vairākus argumentus (kas sajauktu kalkulatoru 🙂)

Kā redzam, mūsu programma ir ļoti augusi 😀, tagad mums ir funkcija imprimir_ayuda() kas parāda ziņojumu par to, kā izmantot aprēķinus, un blokā main() tagad mēs veicam pārskatu ar if(Kaut ko tādu, ko mēs redzēsim programmēšanas apmācībā citā laikā, pagaidām ir jāzina tikai tas, ka, ja kalkulatikā tiek ievadīti vairāk nekā 2 argumenti, ka programma beidzas un tiek parādīta palīdzība. Izpildīsim to:

Pašu. Kristofers Diazs Riveross

Kā redzat, tagad tas izdrukā piegādāto numuru nevis argumentu skaitu, bet kuru es jums iepriekš nebiju teicis 🙂 ziņkārīgajiem echo $? parāda pēdējās izpildītās programmas izejas kodu, kas ir 1 jo tas ir beidzies ar kļūdu. Tagad pārskatīsim, kā notiek mūsu stāsts:

Pašu. Kristofers Diazs Riveross

Tagad mēs zinām, ka esam apņēmušies 1 priekšā Github, ka fails main.c ir modificēts, izveidosim nākamo saistību, darot git add main.c  un pēc tam git commit????

Pašu. Kristofers Diazs Riveross

Tagad mēs esam bijuši mazliet konkrētāki, jo esam ieviesuši funkciju un mainījuši validācijas kodu. Tagad, kad tas ir saglabāts, mēs pārskatīsim pēdējās izmaiņas. Mēs to varam redzēt ar git show HEAD

Pašu. Kristofers Diazs Riveross

Tagad jūs varat redzēt sarkanās un zaļās līnijas, mēs esam pievienojuši bibliotēku stdlib.h, pārveidoja lielu daļu koda un pievienoja funkciju mūsu stāstam.

Tagad mēs aplūkosim žurnālu: (git log)

Pašu. Kristofers Diazs Riveross

Mēs varam redzēt, ka esam divas reizes apsteiguši Github versiju, mēs mazliet izlīdzināsim marķieri 🙂 git push origin master

Ar šo mēs sakām, nosūtiet manas saistības uz URL origin uz zara master

Pašu. Kristofers Diazs Riveross

Apsveicam! Tagad jūsu izmaiņas notiek vietnē Github, vai jūs man neticat? pārskatīsim to 😉

Pašu. Kristofers Diazs Riveross

Tagad mums ir 3 saistības vietnē Github 🙂

Kopsavilkums

Mēs esam skāruši pamata elementus git, tagad viņi var izveidot vienkāršu darbplūsmu savos projektos, tas diez vai ir kaut kas no visdažādākajām lietām, ko var paveikt ar git, taču tas noteikti ir vispraktiskākais un ikdienas darbs izstrādātājam vai emuāru autoram. Mēs vēl neesam sasnieguši kalkulatora beigas, bet to atstāsim citai reizei 😉 Liels paldies, ka ieradāties šeit, un es ceru, ka tas jums palīdzēs piedalīties vairākos projektos


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   Pablo teica

    Sveiki ... Es nezinu, vai jūs esat, bet es nevaru redzēt attēlus šajā pārskatā ...

    Sveicieni

  2.   Pablo teica

    Tā bija problēma ar manu pārlūkprogrammu. Kauns par īgnumu.

  3.   Tecprog pasaule teica

    Man tas joprojām ir jāizlasa sīkāk, es esmu iesācējs.

  4.   Rēķins teica

    Lielisks raksts, lai sāktu ar git, lai gan es iesaku veikt piezīmes, lai saprastu detaļas.
    Pāris lietas man nav bijušas skaidras:
    kāds ir variants Pievienojiet .gitignore Clai gan es domāju, ka to redzēšu, kad to praktizēšu,
    kāpēc jums ir jāpārtaisa git add main.c pirms nākamās git saistības, vai add main.c saka git salīdzināt šo failu ar tīkla versiju? Vai tas automātiski nesalīdz visus pievienotos failus izsekošanai?

    1.    KrissADR teica

      Labdien, Guillermo, labi, ka jums tas šķita noderīgs, lai atbildētu uz jūsu jautājumiem:

      .gitignore ir fails, kas paziņo git, kurus formātus vai modeļus ignorēt, šajā gadījumā atlasot C, tiek ignorēti .o faili un citi, kas tiek ģenerēti kompilācijas laikā, kas ir labi, jo pretējā gadījumā jūsu gits uzreiz kļūtu traks Katrā apkopojumā un pēcpārbaudē 🙂 jūs varat pārbaudīt lielo skaitu formātu, kas nav iekļauti C veidnē, veicot kaķi vai izmantojot teksta redaktoru.

      Lai gan git sekos katram failam, kas pievienots darba kokam, ir īpaši jāizvēlas, kuri faili ievadīs nākamo apņemšanos, lai sniegtu jums piemēru. Pieņemsim, ka jūsu darbs ir licis jums modificēt 5 dažādus failus pirms tam jāspēj redzēt rezultātu. Ja vēlaties būt mazliet konkrētāks un paskaidrot, kas katrā no tiem tiek darīts, varat izdarīt git add file1; git saistīt; git pievienot failu2; git apņemties… .3,4,5; git apņemties. Tādā veidā jūsu stāsts ir tīrs un izmaiņas ir precīzi definētas. Un gadījumā, ja jums kaut kas ir jāmaina vai jāatgriež (uzlabotas tēmas), jūs varat mainīt konkrētas lietas vai pievienot konkrētas lietas, nemainot pārējo.

      Ceru, ka tas palīdz 🙂 sveicieni un paldies par jautājumu

    2.    KrissADR teica

      PS: git add nesaka salīdzināt ar tīkla versiju, bet ar iepriekšējo saistību jūsu darba līnijā, ja tas ir bijis lokāls (zaļš), tas salīdzinās to ar šo, ja tas ir bijis attālināts (sarkans), tas būs salīdzināt ar to citu. Tikai, lai precizētu 😉

      1.    Rēķins teica

        Perfekti, protams, tas precizē.