Git aloittelijalle ++

Tunnet git-työnkulun perustiedot ja tunnet joitain peruskomentoja, kuten lisääminen, sitoutuminen, työntäminen, vetäminen, ehkä tämä viesti on sinulle. Tämä viesti on keskittynyt pääasiassa päivittäiseen git-käytön parantamiseen, joidenkin yleisten virheiden korjaamiseen ja askel kohti etenevää git-oppijaa.

Kevin Ku “lähikuva silmälasikuvasta” Unsplash-kuvassa

# Skenaario lisäyksellä

Haluat vain lisätä tiedostoja, joilla on tietyllä laajennuksella latausalueellesi. Tietysti voit lisätä kaikki tiedostot yksi kerrallaan. Voit kuitenkin käyttää *. sisällyttääksesi kaikki tiedostot, joilla on kyseinen laajennus. Seuraava komento lisää kaikki python-tiedostot.

Lisää * .py

Haluat lisätä tiedostoja, joilla on erityinen laajennus, ja haluat myös määrittää hakemiston nimen, niin voit suorittaa seuraavan komennon. Seuraava komento lisää kaikki python-tiedostot mallien / hakemistojen alihakemistoista.

Lisää malleja / \ *. py

# Skenaario puhtaalla

Olet luonut haaraasi joitain uusia tiedostoja tai kansioita. Jonkin ajan kuluttua huomasit, että et halua näitä tiedostoja tai kansioita. Tarvitset työpuusi puhtaana. Nämä ovat seuraamattomia tiedostoja git-tiedostossa.

Jäljittämättömät tiedostot ovat tiedostoja, joita et ole jo lisännyt git add -sovelluksella

Voit tehdä työpuustasi puhtaan suorittamalla seuraavan komennon. Tämä komento poistaa kaikki tiedostot ja hakemistot, joita git ei seuraa.

git clean -df

Jos haluat nähdä, mitkä jäljittämättömät tiedostot poistetaan ennen poistamista, voit suorittaa tämän komennon.

git clean -dn

# Skenaario rm: llä

Nyt haluat poistaa seuratut tiedostosi. Voit poistaa seuratun tiedostosi tällä komennolla.

git rm 

Jos tiedostosi on lavastusalueella, sinun on annettava lisävoimamerkki.

git rm  -f

Haluat poistaa tiedostoja git-arkistosta, mutta et tiedostojärjestelmästäsi, voit suorittaa tämän komennon.

git rm - välimuisti 

# Skenaario haara

Olet tehnyt kirjoitusvirheen haaroitusnimeesi tai haluat muuttaa haaran nimeäsi, seuraava komento muuttaa haaran nimen.

git haara -m  

Haluat muuttaa nykyisen haaran nimen, niin voit suorittaa seuraavan komennon.

git haara -m 

Jos olet jo työntänyt oksan vanhalla nimellä, vaaditaan muutama lisävaihe. Sinun on poistettava vanha haara kaukosäätimestä ja työnnettävä uusi.

gt push  - poista 
gt push  

Haluat työntää paikallisen sivukoodin, mutta paikallisen sivun nimi ei vastaa etävaraston sivun nimeä. Sitten voit suorittaa seuraavan komennon.

git push  : 

# Skenaario lokilla

Haluat nähdä sitoutumishistorian, joten vain suoritit git log -komennon. Tämä näyttää paljon tietoa, mutta sinun tarvitsee vain nähdä sitoutumista tunnus ja viesti. Sitten voit suorittaa seuraavan komennon.

git log - oneline

git log --oneline näyttää seuraavan tyyppisen tulosteen.

Ensimmäinen seitsemän merkkiä yllä olevassa tulostuksessa on pikakooditunnus ja sitten meillä on sitoutumisviesti. Sitoutustunnus on lyhenne, koska täydellinen sitoudutustunnus on 40 heksadesimaalimerkkiä, jotka määrittävät 160-bittisen SHA-1-hash. Ilmoituspää -> päällikkö. Tämä tarkoittaa, että olemme nyt pääosastolla.

Jos haluat nähdä tietyn kirjoittajan sitoutumisviestin, voit suorittaa seuraavan komennon. Oletan, että kirjoittajan nimi on John Doe.

git log --author = "John Doe"

# Skenaario koristella

Työskentelet sivukonttorissa ja teit joitain muutoksia. Nyt haluat nähdä vain kyseisen haaran tulosteen tai koodin ennen kuin teit muutokset. Sitten voit suorittaa stash-komennon. Se tekee työpuustasi puhtaan.

Git Stash

Jos haluat muutokset takaisin, sinun on suoritettava seuraava komento.

git stash pop

Jos et halua näitä muutoksia takaisin, sinun on suoritettava seuraava komento.

git stash drop

Olet muuttanut joitain tiedostoja väärin haaraan. Sitten voit tallentaa muutokset ja kassat haluamaasi haaraan ja ajaa siellä git stash pop -sivun. Saat muutokset haluamaasi haaraan.

# Skenaario kassalla

Haluat vaihtaa haaraan. Sitten voit suorittaa seuraavan komennon.

git kassalle 

Jos olet jo vaihtanut jotakin tiedostoa nykyisessä haarassasi, muista tallentaa muutokset tai tehdä muutokset. . Jos et pudota tai tee näitä muutoksia, se heijastaa myös vaihdettavassa haarassa, jota et ehkä halua tai tarvitse.

Sinulla on haaranimikehitys ja haluat tehdä sivuliikkeen kehityksestä ja siirtyä suoraan uuteen haaraan. Sitten voit suorittaa seuraavan komennon.

(kehitys) $ git checkout -b 

Voit myös kassalle käyttää sitoumustunnusta. Voit käyttää pikakirjoitustunnusta turvallisesti, jos projekti ei ole kovin suuri.

git kassalle 

Tämä putoaa irronneessa pään tilassa git. Head on yksinkertaisesti viittaus nykyiseen sitoumukseen (viimeisin) nykyisessä haarassa. Yleensä Head in git voi osoittaa haaraa tai sitoutua. Kun Head osoittaa oksalle, git ei valita. Mutta kun pää osoittaa sitoumukseen, mutta ei haaraa, se menee irronneeseen pään tilaan.

Haluat kehittää ominaisuuden tästä irrotetusta päätilasta, sinun on tehtävä haara tästä tilasta ja kehitettävä ominaisuuttasi siellä.

git kassalle -b 

# Skenaario sitoutumisella

Olet juuri lisännyt sitoumussanoman ja huomasit, että sitoumuksessasi on kirjoitusvirhe tai haluat vain tehdä sitoumussanomastasi ilmaisullisemman ja ymmärrettävämmän. Sitten voit käyttää seuraavaa git-komentoa.

git sitoutu --amend -m "sinun-uusi-sito viesti"

Jos olet juuri lisännyt joitain tiedostoja tai korjannut virheen, mutta et halua lisätä uutta sitoutumisviestiä, voit käyttää seuraavaa git-komentoa - no-edit lipun kanssa.

git sitoutu - muut - ei-muokkaa

Yksi asia on erittäin tärkeä muistaa, että viimeisen sitoumuksen muuttaminen kirjoittaa sitoumushistorian. Se tarkoittaa, että sitoumustunnuksesi muuttuu, kun muutat sitoumusta.

Jos olet jo työntänyt koodisi etävarastoon ja huomasit, että sinun on muutettava sitoutumisviestiäsi, muutoksen jälkeen sinun on tehtävä voimapainike. Olettaen etänimesi alkuperästä, voit suorittaa seuraavan komennon.

git push orig  -f

# Skenaario nollaamalla

Haluat hylätä viimeiset sitoumuksesi. Sitten voit git reset -toiminnolla hylätä kyseiset sitoumukset. Git-nollaamiseen on kolme lippua, jotka sinun pitäisi tietää.

  • --pehmeä
  • --mixed
  • --hard

Oletetaan, että haluat hylätä muutokset, kunnes lisätään two.txt, jolla on sitoumusnumero 96b037c

Ajotaan nyt git reset -komento - pehmeällä lipulla.

git reset --soft 96b037c

git reset --soft tekee orvoiksi kaikki sitoumukset sen jälkeen, kun sitoumustunnus (esim. 96b037c), mutta tiedostoja ei poisteta. Tiedostot ovat lavastusalueella.

Orpoksi osoitettu tarkoittaa, että viitteestä ei ole suoraa tietä pääsyyn heille. Nämä orvoksi otetut sitoumukset voidaan yleensä löytää ja palauttaa git reflog -sovelluksella. Git poistaa pysyvästi orpoiksi otetut sitoumukset sisäisen jätekeräilijän suorittamisen jälkeen. Oletuksena git on määritetty ajamaan roskien kerääjää 30 päivän välein.

Joten jos suoritat git-tilan, näet seuraavan tulosteen.

Jos suoritat git log --oneline, näet, että aiemmat sitoumukset poistetaan.

Jos suoritat nollauskomennon - sekoitetun lipun avulla, toimeksiannot orvoidaan ja tiedostot eivät ole lavastusalueella, mutta tiedostot löytyvät tiedostojärjestelmästä. Jos et määritä mitään lippua palautettaessa, git käyttää oletusarvoisesti sekoitettua lippua.

Jos suoritat git-tilan, näet seuraavan tulosteen.

Jos haluat poistaa tiedostot pysyvästi, voit suorittaa nollauskomennon --hard lipulla.

Hyvä käytäntö voit seurata, että suoritat ensin reset-komennon --soft-lipulla ja näet tiedostot, joita asia koskee. Jos olet varma, että et halua näitä muutoksia, voit suorittaa nollauskomennon painikkeella --hard.

Älä koskaan käytä git reset , kun kaikki -kohdan jälkeiset otokset on siirretty julkiseen arkistoon. Muiden ryhmän jäsenten jatkaman sitoutumisen poistaminen aiheuttaa vakavia yhteistyöongelmia.

# Skenaario palautuksella

Työskentelet julkisessa arkistossa ja haluat peruuttaa sitoumuksen. Sitten voit suorittaa seuraavan komennon.

git revert  - ei sitoudu

Kun olet suorittanut yllä olevan komennon, voit tarkistaa asiaan liittyvät tiedostot git-tilan avulla. Sitten sinun on tehtävä sitoumus käyttämällä git activ -m "Sit-viesti".

git revert ei tee orpoa sitoumusta. Se vain peruuttaa palautetun sitoutumistunnuksesi muutokset.

Oletetaan, että haluat palauttaa viimeisen sitoumuksen. Sen jälkeen tilasi palautumisen jälkeen näyttää seuraavalta.

Ennen viimeistä sitoa six.txt-tiedostoa ei lisätty, joten se poistetaan ja five.txt vaihdetaan takaisin edelliseen tilaansa. Nyt sitoutumisen jälkeen historia näyttää tältä.

Haluat palauttaa useita sitoumuksia alueen sisällä, niin voit suorittaa seuraavan komennon.

git palata 

Jos haluat palauttaa useita sitoumuksia, jotka eivät ole alueen sisällä, sinun on annettava jokainen sitoudustunnus, jonka haluat palauttaa.

git revert 

# Skenaario kirsikkavalinnalla

Työskentelet haarassa ja tarvitset toimeksiannon (esim. Virheenkorjaussitoumus) toiselta haaralta työskennelläksesi nykyisessä haarassasi. Sitten voit käyttää kirsikka-valinta-komentoa saadaksesi sitoutuminen nykyiseen haaraasi. On myös hyödyllistä, jos olet sitoutunut väärään haaraan ja haluat sitoutua toiseen haaraan.

Ensin sinun on vaihdettava haaraan, jolla on sitoutuminen. Kopioi sitoumuksen tunnus ja siirry takaisin omaan työskentelyosastoon. Suorita sitten seuraava komento saadaksesi sitoutuminen työskentelevään haaraasi.

git cherry-pick on kuin kopioida jotain kansiosta ja liittää se toiseen kansioon. Joten se ei poista sitoumusta siitä, mistä olet valinnut kirsikan, ja kohdehaaran sitoumustunnus on myös erilainen.

git kirsikka-poimi 

Opiskelen myös git melkein joka päivä, enkä pidä itseäni git-käyttäjinä. Joten jos tein virheen, voit vapaasti korjata minut ja laittaa ehdotuksesi kommenttiosaan.