Nei git log Ichifumura Zvakavanzika Kunyangwe Mushure mekunge "Zvabviswa"
Kubvisa mutsetse kubva kufaira uye commitkuchinja hakubvisi data rakakosha kubva mu repo yako. Kana chakavanzika ichocho, kiyi yeAPI, humbowo, kana token, yakambovapo committed, inogara munhoroondo yako yeGit. Chero ani zvake ari kumhanya git log -p, git kuratidza, kana kuongorora kwakasiyana nezvakaitika kare commits achiri kukwanisa kuitora.
Kunyangwe ukabvisa faira kana kutsiva kukosha kwaro, git danda inochengetedza dzinza rakazara rekuchinja kwese. Izvi zvinoitwa nekugadzira. Modhi yese yaGit yakavakirwa pane isingachinjiki commit nhoroondo uye makopi akagoverwa. Saka kunze kwekunge wanyorazve nhoroondo zvakajeka, zvakavanzika zvako zvichiripo. Heino nyaya inoshanda:
⚠️ Muenzaniso wedzidzo, haushande mukugadzirwa
Zvanonoka. git danda ichiri kuratidza kiyi iyoyo muchinyorwa chekutanga commit.
Pfungwa Dzisiri Dzechokwadi Dzakapoteredza git stash uye git rebase
Vagadziri vazhinji vanofungidzira kuti git stash zvinobatsira kuviga kana kuchenesa zvakavanzika. Hazvisi zvechokwadi. git stash masherufu chete dhairekitori rinoshanda zvinoshanduka kwenguva pfupi; hazvimbofi zvakabata commit nhoroondo. Kana chakavanzika chakambovapo committed, kuisa shanduko mushure mezvo hakubatsiri kuichenesa.
Ko git rebaseKunyange zvazvo ichigona kunyorazve nhoroondo, inofanira kuitwa isati yatangacisely. Ndiri kungomhanya git rebase -i uye kurongedza patsva kana kupwanya commits haibvisi zvakavanzika kunze kwekunge wazvigadzirisa kana kuzvisiya pachena. Uye kana paine clone imwe chete kana forogo neyokutanga commits, chakavanzika chako chinoramba chiripo.
Zvakatoipisisa, kudzoreredza magwaro pasina kumanikidza nemazvo kana kubatana nevanoshanda navo kunogona kudzoreredza ruzivo rwakaratidzwa pachena kuburikidza nekubatanidzwa.
⚠️ Muenzaniso wekudzidzisa, usashandise munzvimbo chaiyo
⚠️ Muenzaniso wekudzidzisa, haushande pamarepo ekugadzira
Rongedza commit rine chakavanzika, asi kanganwa kuchibvisa. Your git danda simba tsvaka yakachena, asi zviri mukati zvichiri kudzoreredzwa.
Njodzi Dzepasi Pese Dzinobva kuZviratidzo Zvakakanganikwa muGit History
Izvi hazvisi zvekufungidzira. Varwisi vari kutsvaga zvakavanzika zviri munzvimbo dzeveruzhinji nedzepachivande. commit nhoroondo. Maforogo eGitHub, magirazi, uye akachengetwa CI/CD pipelines dzese dzinogona kuchengeta zviratidzo izvozvo zvakakanganikwa.
- Kiyi yeAPI yakaburitswa kubva kune yekare git danda zvakakonzera kuti zviuru zvevanhu vabhadhare mari kubva ku "cloud" kune imwe kambani itsva.
- Matokeni eOAuth committed, yakazobviswa, yakashandiswa kuba maakaundi evashandisi.
- Zvakavanzika zvakavigwa mukati-kati memapurojekiti akavhurika zvakakonzera zviitiko zvikuru zvekuchengetedza.
Matambudziko aya anowedzera CI/CDBasa rega rega rinoita repo rinomhanya git danda pasi pehood, uye chinhu chega chega chakavakwa chinogona kusanganisira zviratidzo zvezvakavanzika zvakafumurwa.
Kuchenesa Data Rinonzwisisika ne git filter-repo
Kana kukuvara kwacho kwaitika, chishandiso chakavimbika chekuchenesa ndicho git filter-repo. Kusiyana git rebase, iyo inonyorazve mumwe munhu commits, git filter-repo anogona kunyorazve zvese commit nhoroondo yakavakirwa panzira dzemafaira, mapatani, kana zviri mukati.
Muenzaniso: kubvisa zvese zvinoitika config.json izvo zvingave zvine zvakavanzika:
⚠️ Muenzaniso wekudzidzisa, simbisa mu repo yekuedza usati washandisa mukugadzira
Kana kubvisa zvese commits dzinosanganisira tambo chaiyo (semuenzaniso, AWS_SECRET_ACCESS_KEY):
⚠️ Muenzaniso wekudzidzisa, simbisa mu repo yekuedza usati washandisa mukugadzira
Chenjerera: Izvi zvichanyorazve commit hashes. Uchafanira kumanikidza-kusunda uye kuzivisa vese vaunoshanda navo. Chero makiyi e otomatiki kana ekuparadzira akabatanidzwa commit mahashe achapwanyika.
Uyezve, zvishandiso zvakafanana BFG Repo-Cleaner vane hunyanzvi hwakafanana asi havachinjiki zvakanyanya uye ikozvino vanoonekwa sevasina nguva yekurapa nyaya dzakaoma.
Kudzivirira Kubuda Kwepachivande Kusati Kwasvika kuGit
Kudzivirira kunopfuura kuchenesa. Heino maitiro ekudzivisa zvakavanzika kuti zvisaitike git danda:
1. Pre-commit Hooks
Shandisa zvishandiso se pre-commit, gitleaks, kana talisman kuti uongorore zvakavanzika usati watanga commits:
2. CI/CD Pipeline Enforcement
Gadzira kuonekwa kwakavanzika mumabasa enyu eCI. Kukundikana kunowedzera kana zvakavanzika zvikawanikwa. Itai kuti izvi zvive mutemo.
3. Kutarisira Zvakavanzika
Usambofa wakanyora zvitupa zvako. Shandisa zvinhu zvakasiyana-siyana, nzvimbo dzekuchengetedza, kana mamaneja epachivande kubva pazuva rekutanga.
4. Zvinodiwa neOngororo
Usavimba nemapakeji evamwe vanhu usingafungi. Zvakavanzika zvinogona kubuda kuburikidza ne npm, PyPI, kana Docker layers.
Kugadzirisa Kwekupedzisira: Zvakavanzika zveScrub ne git filter-repo
Kubvisa zvakavanzika kubva pakodhi hazvina kukwana. git danda inochengeta zvinyorwa zvizere kunze kwekunge watora matanho nemaune ekunyorazve nhoroondo. Usavimba ne git stash kana kuti yakabikwa nehafu git rebase kuedza. Shandisa git filter-repo Kana uchida kucheneswa zvakadzama, uye shandisa mitemo nekuongorora zvakavanzika zvisati zvasvika kunzvimbo yako yekutanga.
Kuti muone zvakavanzika zviri kuitika, fungai nezvekushandisa maturusi akaita se Xygeni kuchengetedza yako pipelines, simbisa commit hutsanana, uye kudzivirira kudonha kunodhura kusati kwabuda pachena. Git haimbokanganwi, asi unogona kuva nechokwadi chekuti haimboyeuki zvakavanzika zvako pakutanga.





