Ipapaliwanag sa iyo ng artikulong ito kung paano I-squash ang lahat ng mga commits sa isang solong pagbibigay ng git. Naipatupad namin ang lahat ng mga hakbang sa pamamahagi ng CentOS 8 Linux.
Squash Commits sa isa na may git
Maaari mong ipatupad ang git squashing sa mga sumusunod na hakbang:
Hakbang 1: Piliin ang Simulang mangako
Upang matukoy kung gaano karaming mga pangako ang kailangan mong mag-squash, ang sumusunod na utos na tatakbo sa terminal:
$ git log
Ngayon, tatawagin mo ang git upang magsimula ng isang interactive na session ng muling pagbuong sa pamamagitan ng paggamit ng sumusunod na utos:
$ git rebase -i HEAD ~ NSa itaas na ULO ~ N, ang 'N' ay ang kabuuang bilang ng mga ginawa mong determinasyong tinukoy mula sa 'git log' na utos. Ipagpalagay natin, ang bilang ng mga gumawa ay 4. Ngayon, ang utos ay magbabago sa sumusunod na form:
$ git rebase -i HEAD ~ 4Ang sumusunod na listahan ng mga gawa ay ipapakita sa terminal kung saan ang bawat isa ay nakatingin sa salitang pick.
Hakbang 2: Palitan ang Piliin sa Squash
Dito, mamarkahan namin ang lahat ng mga nakagagawa bilang squashable, iwanan ang unang komit na gagamitin bilang isang panimulang punto. Kaya, palitan ang vim editor sa insert mode sa pamamagitan ng pagpindot sa 'i' at palitan ang lahat ng pick pick sa squash maliban sa unang gumawa. Ngayon, pindutin ang 'Esc' upang baguhin ang insert mode at pindutin ang ': wq!' Upang mai-save ang lahat ng mga pagbabago at umalis. Kung gumagamit ka ng simpleng text editor noon, maaari mo lamang palitan ang 'pick' na salita sa 'squash' at i-save ang mga pagbabago. Pagkatapos nito, makikita mo ang sumusunod na window sa terminal:
Kapag iniiwan mo ang shell na ito, makikita mo ang mga sumusunod na mensahe sa window ng terminal:
Kung mai-squash mo ang lahat noon, makikita mo ang lahat ng mga commit na pinagsama sa isang solong pahayag na ipapakita sa terminal:
Konklusyon
Sa pamamagitan ng paggamit ng git squash, madali mong mai-squash o mai-compress ang maraming mga commits sa isang mas maliit na solong pagbibigay. Maaari mong gamitin ang diskarteng ito upang ayusin ang mga pagkakamali sa pagbaybay ng dokumentasyon. Ipinatupad namin ang git squash sa artikulong ito. Nakita rin namin kung paano namin malinis ang kasaysayan gamit ang git rebase at mga utos ng kalabasa.