Kapag nagtatrabaho sa isang git repository, may panganib ng hindi gustong data. Sa kabutihang palad, maaari kang lumikha ng isang file na may extension ng GITIGNORE at tukuyin kung aling mga file at folder ang dapat balewalain sa proyekto. Maaari kang bumuo ng isang pandaigdigang data ng GITIGNORE para magamit sa bawat repositoryo ng Git.
Paano Gumawa ng GITIGNORE Files
Ang mga GITIGNORE file ay mga plain text file, kaya maaari mong buksan ang mga ito gamit ang Notepad o anumang text editor. Narito kung paano gumawa ng GITIGNORE file:
- Buksan ang anumang text editor at pindutin ang save. Palitan ang pangalan sa .gitignore.
- Kapag nag-e-edit ng file, ang bawat linya ay nakalaan para sa isang folder o isang file na dapat balewalain ng isang git.
Gamitin ang “#” para magdagdag ng mga komento sa isang .gitignore file
Gamitin ang "*" para sa isang wildcard na tugma
Gamitin ang #/” para huwag pansinin ang mga path na nauugnay sa GITIGNORE file.
Bilang halimbawa, maaaring ganito ang hitsura ng iyong GITIGNORE:
# Huwag pansinin ang folder ng node_modules
node_modules
# Huwag pansinin ang mga file na nauugnay sa mga key ng API
.env
# Huwag pansinin ang mga file ng Mac system
.DS_store
# Huwag pansinin ang mga file ng config ng SASS
.sass-cache
# Huwag pansinin ang lahat ng mga text file
*.txt
Tulad ng alam mo, ang mga komento ay opsyonal.
Huwag pansinin ang mga direktoryo sa pamamagitan ng pagsasama ng kanilang mga landas at paggamit ng "/" sa dulo ng bawat linya.
Halimbawa:
pagsubok/
mga tala/
load/
Habang ang simbolo ng wildcard na "*" ay maaaring gamitin upang huwag pansinin ang lahat ng mga file na may partikular na extension, maaari mo itong pagsamahin sa simbolo ng negation na "!". Narito ang isang halimbawa:
*.txt
!readme.txt
!main.txt
Ipapaalam ng nasa itaas ang git na huwag pansinin ang bawat file na may extension na .txt maliban sa readme.txt at main.txt.
Maaaring gamitin ang mga wildcard para sa mga direktoryo. Mag-ingat lamang kapag ginagamit ang mga ito, tulad ng ipinapakita sa halimbawang ito:
pagsusulit/
!test/example.txt
Maaari mong isipin na babalewalain na ngayon ng git ang bawat file sa loob ng "test" na direktoryo maliban sa "example.txt". Gayunpaman, hindi iyon ang kaso. Babalewalain pa rin nito ang example.txt para sa mga kadahilanan ng pagganap, dahil tinukoy namin na ang buong direktoryo ng "pagsubok" ay binabalewala.
Mayroon kang opsyon na gumamit ng double Asterisk (**) upang tumugma sa anumang bilang ng mga direktoryo at file. Halimbawa, sasabihin ng Test/**/*.txt sa git na huwag pansinin lamang ang mga file na nagtatapos sa .txt sa direktoryo ng pagsubok at mga subdirectory nito.
Tatlong Paraan para Ipatupad ang GITIGNORE Files
Gumamit ng isang pandaigdigang GITIGNORE sa lahat ng iyong mga proyekto, alinman sa iyong mga kasamahan o nag-iisa. Gayunpaman, maaari kang lumikha ng isang lokal na GITIGNORE o kahit na tukuyin ang mga panuntunan sa pagbubukod.
Gumawa ng Lokal na GITIGNORE File
Mayroong dalawang paraan upang tukuyin ang GITIGNORE file. Maaari kang magkaroon ng GITIGNORE file sa antas ng direktoryo o lumikha ng isang file sa ugat. Sa karamihan ng mga kaso, kasama sa GITIGNORE ang file ng pag-aari at mga file ng pagsasaayos. Kapag kinukuha din ng iyong mga kasamahan sa koponan ang parehong GITIGNORE file, siguraduhing gamitin ang "#" upang magdagdag ng mga komento para sa kalinawan.
Gumawa ng Global GITIGNORE File
Kung nagtatrabaho sa maraming git repository, makakatipid ka ng maraming oras sa pamamagitan ng pagtukoy sa mga pandaigdigang panuntunan para sa iyong mga lokal na repository.
- Gumawa ng GITIGNORE file at tukuyin ang mga pangkalahatang tuntunin na ilalapat.
- Gamitin ang core.excludesFiles property para gawing global ang iyong lokal na GITIGNORE file. Gamitin ang sumusunod na linya:
git config –global core.excludesFile
Lumikha ng Mga Personal na Panuntunan ng GITIGNORE
Kung mayroon kang isang partikular na repositoryo, mga panuntunan, maaari mong baguhin ang mga global o lokal na GITIGNORE file. Ang mga panuntunang ito ay hindi maaaring ibahagi o kontrolin sa ibang mga miyembro ng iyong workgroup. Maaari kang gumamit ng mga personal na panuntunan ng GITIGNORE para sa iyong mga lokal na direktoryo ng trabaho o mga setting ng logger.
Gamit ang GITIGNORE File para sa mga Committed Files
Huwag pansinin ang Mga Naka-commit na File
Ang mga naka-commit na file ay isinasama sa repository dahil naka-cache ang mga ito. Kung babalewalain mo ang data na ito, kailangan muna itong alisin. Ang iminungkahing paraan para gawin ito ay tanggalin ang mga file na ito at pagkatapos ay i-commit at ilapat ang mga pagbabago. Sa sandaling magawa mo iyon, maaari mong gamitin sa wakas ang GITIGNORE sa pamamagitan ng pagtukoy sa isang panuntunan kung saan ang file ay hindi papansinin nang lokal. Idagdag ang linyang ito:
git rm –naka-cach
Sa ganitong paraan, ang file ay aalisin mula sa repositoryo kahit na ito ay mananatili sa gumaganang direktoryo. Ang isang GITIGNORE file na may ganitong panuntunan ay dapat nasa working directory.
I-commit ang Dating Binalewala na File
Kung nais mong gumawa ng isang file na hindi pinansin, maaari mong gawin ito gamit ang "git add" na linya at ang "force" na opsyon. Halimbawa, kung gusto mong tanggalin ang example.txt mula sa GITIGNORE file habang pinapanatili itong repository na nakatuon t, maglagay ng mga linya:
git add -f example.txt
git commit -m “Puwersang magdagdag ng example.txt”.
Nagdagdag ka na ngayon ng hindi pinansin na file sa repositoryo. Ang huling hakbang ay baguhin ang GITIGNORE file sa pamamagitan ng pag-alis ng hindi papansin na pattern o ang panuntunan.
Gamitin ang GITIGNORE sa Iyong Pakinabang
Dahil naroroon ang mga file ng GITIGNORE sa halos bawat proyekto, kakailanganin mong matutunan kung paano gamitin ang mga ito. Bagama't simple ang mga utos, mahalagang tukuyin ang iyong mga panuntunan at huwag pansinin ang mga tamang file. Sa wastong paggamit ng GITIGNORE, makakatipid ka ng oras at ma-optimize ang iyong proyekto.
Gaano kadalas mo kailangan ang mga file ng GITIGNORE sa git repository? Madalas ka bang gumagamit ng pandaigdigang o lokal na mga panuntunan? Mangyaring ibahagi ang iyong mga karanasan sa seksyon ng mga komento.