Ano ang Pagkakaiba sa pagitan ng 'git revert' at 'git rebase' sa Git?

Ano Ang Pagkakaiba Sa Pagitan Ng Git Revert At Git Rebase Sa Git



Minsan, maraming pagkakamali ang nangyayari habang nag-develop, gaya ng pagdaragdag ng sensitibong impormasyon sa hindi sinasadyang pag-commit, paggawa ng hindi natapos na trabaho, o pagpasok ng mga bug. Ang pagbabalik ng mga pagbabago at muling pagsusulat ng kasaysayan ng log ng Git ay nagbibigay-daan sa mga user ng Git na ayusin ang mga pagkakamaling ito at matiyak ang isang malinis at tamang codebase.

Sa gabay na ito, tatalakayin natin ang:







'git revert' Command sa Git

Ang ' git revert Ang command na ” ay ginagamit para sa pagbuo ng mga bagong commit na ibabalik ang mga idinagdag na pagbabago sa isang nakaraang commit. Sa madaling salita, ito ay ginagamit para sa pagkansela ng mga karagdagang pagbabago na nangyayari pagkatapos isagawa ang reset command. Bukod pa rito, hindi nito inaalis ang umiiral na data ngunit nagdadagdag lamang ng bagong commit sa dulo na kinakansela ang mga pagbabago sa lokal na repositoryo.



Tingnan natin ang mga praktikal na demonstrasyon ng inilarawan sa itaas na utos!



Hakbang 1: I-redirect sa Local Repository

Sa una, isagawa ang ' cd ” utos na may ninanais na landas ng imbakan at mag-navigate dito:





cd 'C:\Users\nazma\Git\Git\Demo1'

Hakbang 2: Lumikha at Magdagdag ng File

Pagkatapos, gumawa ng bagong file sa pamamagitan ng “ echo ” utos at subaybayan ito sa pamamagitan ng paggamit ng “ git add ” utos:

echo 'aking bagong file' >> file8.txt && git add file8.txt



Hakbang 3: Suriin ang Katayuan

Susunod, ipakita ang estado ng kasalukuyang gumaganang direktoryo sa pamamagitan ng pagsasagawa ng utos na 'git status':

katayuan ng git

Ayon sa sumusunod na output, matagumpay na nasubaybayan ang bagong file:

Hakbang 4: I-save ang Mga Pagbabago

Upang i-save ang mga sinusubaybayang pagbabago, gamitin ang sumusunod na command kasama ang commit message:

git commit -m 'idinagdag ang file8.txt'

Hakbang 5: Tingnan ang Kasaysayan ng Git Log

Isagawa ang utos na 'git log' gamit ang ' -isang linya ” flag upang ipakita ang bawat commit sa isang linya:

git log --oneline

Ang output na ibinigay sa ibaba ay nagpapahiwatig na ang lahat ng mga commit ay matagumpay na nailista. Pinili namin ang ' 939d65b ” SHA-hash para sa karagdagang paggamit:

Hakbang 6: Ibalik ang Mga Pagbabago

Pagkatapos nito, gamitin ang ' git revert ” utos na may naunang napiling commit na aalisin ko ang mga pagbabago:

git revert HEAD

Pagkatapos isagawa ang utos sa itaas:

  • COMMIT_EDITSG ” file ay magbubukas gamit ang default na editor.
  • Idagdag ang commit message para sa pagbabalik ng operasyon.
  • Pindutin ang ' CTRL+S ” key upang i-save ang mga pagbabago at isara ito:

Ayon sa ibinigay na output sa ibaba, matagumpay naming naibalik ang partikular na commit:

Hakbang 7: Pag-verify

Upang i-verify ang mga binalik na pagbabago, patakbuhin ang sumusunod na command:

git log --oneline

Mapapansing matagumpay na naibalik ang mga pagbabago sa isang bagong commit HASH:

'git rebase' Command sa Git

Ang ' git rebase Ang utos ng ” ay ginagamit para sa pagsasama-sama o pagsasama-sama ng maraming commit sa isang linear sequence sa pamamagitan ng pagbabago, at paglipat sa bagong base. Pinapayagan nito ang mga user na isama ang pinakabagong mga pagbabago at ilipat ang mga ito mula sa isang lokal na sangay patungo sa isa pa. Bukod pa rito, muling isinusulat nito ang kasaysayan ng mga commit sa ibabaw ng isa pang rebased na sangay.

Ngayon, tingnan ang nakasaad sa ibaba na pamamaraan para sa isang mas mahusay na pag-unawa!

Hakbang 1: Maglista ng Mga Sangay

Una sa lahat, isagawa ang ' git branch ” utos upang tingnan ang lahat ng lokal na sangay:

git branch

Mula sa ibinigay na output, pinili namin ang ' tampok ” sangay para sa karagdagang paggamit:

Hakbang 2: Lumipat ng Sangay

Upang mag-check out mula sa isang nagtatrabaho branch patungo sa isa pa, patakbuhin ang sumusunod na command:

tampok na git checkout

Hakbang 3: Rebase Branch

Gamitin ang ' git rebase ” utos na may lokal na pangalan ng sangay upang idagdag ito:

git rebase master

Hakbang 4: Ipakita ang Kasaysayan ng Log

Upang i-verify ang mga binase na pagbabago, patakbuhin ang ' git log' na utos na may '–oneline ” opsyon:

git log --oneline

Ano ang Pagkakaiba sa pagitan ng 'git revert' at 'git rebase' sa Git?

Ang pagkakaiba sa pagitan ng ' git revert 'utos at ang' git rebase ” utos ay nakalista sa sumusunod na talahanayan: iyan! Ipinaliwanag namin ang ' git rebase' at 'git revert ” utos sa Git.

Konklusyon

Ang ' git revert 'at' git rebase ” ay dalawang magkaibang command na ginagamit para sa pamamahala at pagmamanipula sa history ng bersyon. Parehong maaaring gamitin para sa iba't ibang layunin, tulad ng ' git revert Ang command na ” ay ginagamit upang makabuo ng bagong commit na ibinabalik ang mga idinagdag na pagbabago sa commit. Gayunpaman, ang ' git rebase Ang utos ng ” ay ginagamit upang pagsamahin ang maraming commit sa isang linear sequence sa pamamagitan ng paglipat o pagbabago ng mga commit. Sa gabay na ito, inilarawan namin ang pagkakaiba sa pagitan ng ' git revert' at 'git rebase ” utos sa Git.