Kuidas Gitiga: tagasivõtmise kohustus

Kui olete teinud oma Git repos muudatusi ja teinud vea, on alati tore teada, et teil on võimalus oma lubadused tagasi võtta, et oma töövoog uuesti õigele teele jõuda. Selles juhendis vaatleme käsku git revert kohalike ja kaugete hoidlatesse lubamiseks.

Enne sukeldumist on oluline mõista erinevust git lähtestamise ja git revertimise vahel.

Git revert eelised Git lähtestamine

Taastamisel on lähtestamise ees kaks olulist eelist:

  • Taastamine ei muuda projekti ajalugu, mis muudab selle turvalisemaks toiminguks nendele koosseisudele, mis on juba jagatud hoidlasse viidud.
  • Taastamine on võimeline sihtima üksikuid kohustusi ajaloo suvalises punktis, kui aga kasutate giti lähtestamist, see võib toimida ainult praegusest kohustusest tagasiulatuvalt.

Käskluse git revert abil tagasipöördumine

Git reverti käsu süntaks on:

1 tagasi pöörduma

Kui mõnes toetatud kohustuse ID-vormingus seda kirjeldatakse, saab Git sellest aru.

Saate kasutada git reflogi, et vaadata kohalikku Giti ajalugu koos selle lühikese pühendumuse ID-dega, või kasutada git-logi, et leida pikema vormi SHA-1 pühendumise ID-d kogu pühendunud Giti ajaloo kohta.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

$ git reflog

bc32b0d HEAD @ {0}: sisestama: lisatud contact-us.htm

ead83d9 HEAD @ {1}: sisestama: lisatud blog.htm

 
 

$ git logi

siduma bc32b0d8a583ccc3b0bcc9fbdfe3c7bbd1b4f0d1

Autor: Kasutaja < [email protected]äide.com>

Kuupäev: teisipäeval 10. veebruaril 12:38:32 2015 -0500

 

    Lisatud kontakt-us.htm

 

siduma ead83d9f1d800de241580070d22a17f769ea7866

Autor: Kasutaja < [email protected]äide.com>

Kuupäev: teisipäeval 10. veebruaril 12:38:00 2015 -0500

 

    Lisatud blog.htm

Käsk git reflog salvestab kõige, mida olete oma kohalikus hoidlas teinud, kronoloogilise ajaloo. Selle täielik väljund võib välja näha järgmine:

1
2
3
4
5

bc32b0d HEAD @ {1}: sisestama: lisatud kontakt-us.htm

ead83d9 HEAD @ {2}: sisestama: lisatud blog.htm

1a890e7 HEAD @ {3}: sisestama: lisatud about-us.htm

bf58ea1 HEAD @ {4}: sisestama: lisatud index.htm

5c66257 HEAD @ {5}: kohustus (algne): lisatud README.md

1. juhtum: ühe kohaliku kohustuse tagasivõtmine

Ütleme nüüd nii, et kui lisasite just projekti projekti contact-us.htm, olete aru saanud, et te ei vaja enam faili about-us.htm.

Võite naasta selle kohustuse tegemise aja juurde ja säilitada kõik muudatused pärast seda, tehes järgmist:

1 git tagasi 1a890e7

Git küsib selle tagasivõtmise kohta uut märkust, andes teile vaikimisi:

1
2
3

Ennista "Lisatud about-us.htm"

 

See tühistab 1a890e7980283e348cde0444cabe709f6342a851.

Edastage ja salvestage see märkus või looge ennistamise lõpuleviimiseks oma:

1
2
3

[master 2bbaed3] Ennista "Lisatud about-us.htm"

1 faili muudetud, 1 kustutamine (-)

kustutage režiim 100644 about-us.htm

See tühistab konkreetse kohaliku kohustuse. Uuemad kohustused ja Giti ajalugu on säilinud.

1
2
3
4
5
6
7
8
9
10

$ git reflog

2bbaed3 HEAD @ {0}: tagasi: tagasipöördumine "Lisatud about-us.htm"

bc32b0d HEAD @ {1}: sisestama: lisatud kontakt-us.htm

ead83d9 HEAD @ {2}: sisestama: lisatud blog.htm

1a890e7 HEAD @ {3}: sisestama: lisatud about-us.htm

bf58ea1 HEAD @ {4}: sisestama: lisatud index.htm

5c66257 HEAD @ {5}: kohustus (algne): lisatud README.md

 

$ ls

blog.htm kontakt-us.htm index.htm README.md

Juhtum 2: Kohalike Git-i kohustuste ulatuse tagastamine

Kõigi kohalike toimingute taastamiseks väärtusest „1a890e7” kuni „HEAD” kasutage järgmist:

1 Pea tagasi 1a890e7..HEAD

3. juhtum: lükatud Git-kohustuse tagasivõtmine

Pärast kaughoidla kontrollimist saate kõigepealt kasutada funktsiooni git revert ja seejärel lükata nagu tavaliselt:

1
2

git tagasi 1a890e7980283e348cde0444cabe709f6342a851

git push päritolu

4. juhtum: Giti ulatuse tagasipöördumine kohustub seda tegema

Samuti võime tühistada rea ​​surutud kohustusi:

1
2

git tagasi 1a890e7980283e348cde0444cabe709f6342a851..ead83d9f1d800de241580070d22a17f769ea7866

git push päritolu

Peate lihtsalt kiire kohaliku kohustuse tagasi võtma? Kasutage lähtestamist

Mõnikord võib juhtuda, et kui teete lihtsalt kiire kohaliku vea, võiksite mitte kasutada git pöördumist ja selle asemel võiksite kasutada lihtsalt git lähtestamist.

Mõlemal juhul peaksite loodetavasti nüüd aru saama, kuidas parandada halb kohustus, mille olete Gitiga kogemata teinud. Protsess võib alguses tunduda keeruline ja hirmutav, kuid tegelikult on seda üsna lihtne mõista, kui olete ise selle protsessi paar korda läbi teinud..

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me