Panimula sa Pagkontrol sa Bersyon gamit ang Git

Kinakain ng software ang mundo sa lahat ng posibleng kahulugan. Habang umuunlad ang teknolohiya at unti-unti tayong umuunlad sa mundong kontrolado ng AI, ang mga trabaho sa sektor ng teknolohiya ay makakakita ng pagtaas. Ang software sa pagsusulat ay isang kasanayan na maaaring itinuro sa sarili at medyo madali rin kahit na sa mundo ngayon na ang internet ay literal na umaapaw sa mga mapagkukunan na halos pareho. Ngunit bilang isang software developer, ang pagsusulat ng code ay hindi lang ang inaasahan sa iyo. Kailangan mong matutunan ang banayad na sining ng pamamahala sa base ng code ng iyong kumpanya habang sila ay nagsusukat at nagpapakilala ng higit pang mga feature. Alam ng mga taong nagsulat ng software dati na ang pagpapanatili ng code base ay kasinghalaga ng pagsulat ng performant at production ready code.

Kontrol ng bersyon

Ang malinaw na tanong na maaaring pumasok sa iyong isip pagkatapos basahin ang intro ay, paano pinamamahalaan ng isang tao ang kanilang code base? Ang sagot ngayon ay mga version control system. Version control o VCS dahil kilala ito bilang isang software system na namamahala at sumusubaybay sa mga pagbabago sa isang partikular na file o isang set ng mga file at nagbibigay-daan sa iyong madaling bumalik sa nakaraan upang i-undo ang anumang mga hindi kinakailangang pagbabago na maaaring ginawa mo.

Bilang isang baguhan, ang pag-aaral sa pag-code ay maaaring mukhang napakalaki sa iyo at higit pa sa pagdaragdag ng responsibilidad ng pamamahala sa iyong sarili ng code, tiyak na mukhang isang napakalaking gawain ngayon, hindi ba? Well, hindi mo kailangang mag-alala. Sa artikulong ito, ituturo ko sa iyo ang isang hakbang-hakbang na pamamaraan para sa pamamahala ng iyong code base sa ilalim ng isang version control system at kasabay nito ay sasabihin sa iyo kung bakit ito ay isang mahalagang kasanayan upang matutunan.

Sa komunidad ng developer, ang Git ang pinakasikat na VCS na available, kaya ibabase namin ang artikulong ito sa Git. Kasama ng Git, bibigyan din kita ng maikling pagpapakilala sa GitHub na isang serbisyo sa pagho-host ng repositoryong kontrol ng bersyon.

Linus Torvalds, ang ama ng Linux kernel, habang ang pagbuo ng parehong ay dumating sa isang sitwasyon kung saan hindi na niya maayos na mapamahalaan ang code na isinusulat niya sa oras na ginagamit niya ang BitKeeper. Kaya't gumawa siya ng maliit na detour upang bumuo ng Git at ginawa itong pampubliko noong taong 2005. Ang disenyo ng Git ay malapit na nakabatay sa BitKeeper. Ang pangalang "git" ay ibinigay ni Linus Torvalds nang isulat niya ang pinakaunang bersyon. Inilarawan niya ang tool bilang "ang hangal na tagasubaybay ng nilalaman".

Bakit kailangang Matutunan ng Bawat Developer Paano gamitin ang VCS?

Ang mga tradisyunal na sistema ng software ay binubuo ng ilang mga file, kumalat sa maraming mga direktoryo at sa isang tipikal na kumpanya, mayroong maraming mga developer na nagsusulat ng mga pagbabago sa software stack sa parehong oras. Nagiging lubos na mahalaga para sa lahat ng mga developer na manatiling produktibo hangga't maaari ngunit sa parehong oras, parehong mahalaga na panatilihin ang buong koponan sa parehong pahina. Ibig sabihin, dapat alam ng bawat tao sa team kung anong mga feature ang ginagawa. Ang isa pang mahalagang bagay na dapat tandaan habang gumagawa ng software ay ang katotohanan na ang trabaho ng isang tao ay hindi dapat makaapekto sa gawain ng sinumang ibang tao sa parehong koponan. Sa termino ng karaniwang tao, ang ibig kong sabihin ay kung ikaw bilang isang developer ay nagtatrabaho sa isang tampok, hindi ito dapat makahadlang sa daloy ng trabaho ng alinman sa iyong mga kasamahan habang nagsusulat ka ng mga pagbabago sa codebase. Ang lahat ng mga kasong ito ay pinangangasiwaan nang napaka-eleganteng gamit ang VCS. Hindi lang nito pinapadali ang buhay ng mga developer sa pamamagitan ng pagsubaybay sa mga pagbabagong ibinigay ng bawat indibidwal sa team, ngunit nagpapanatili din ito ng history ng bersyon sa isang simpleng format upang ang anumang hindi sinasadyang pagbabago sa codebase ay madaling maiiwasan.

Mayroong maraming mga bersyon ng control system na magagamit sa merkado tulad ng Subversion, Mercurial atbp ngunit ang dahilan kung bakit kami ay tumutuon sa Git ay na ito ay sa ngayon ang pinakasikat na opsyon na magagamit.

Setup

Ang setup ng git ay iba depende sa kung anong operating system ka. Ituturo ko sa iyo ang proseso ng pag-setup sa macOS, Linux, at Windows.

MacOS

Ang pag-install ng Git ay medyo madali sa Mac, siguraduhin munang na-install mo ang brew, ang sikat na manager ng package para sa Mac. Kapag na-setup na ang brew (na sa totoo lang ay tumatagal lamang ng ilang sandali depende sa bilis ng iyong internet) kailangan mo lamang mag-isyu ng sumusunod na utos:

  • brew install git

Linux

Ang proseso ng pag-install sa Linux ay medyo katulad din sa macOS. Buksan ang terminal at ilabas ang sumusunod na command:

  • sudo apt-get install git

Windows

Ang proseso ng pag-install sa Windows ay medyo naiiba. Sa Windows, kailangan mong mag-download ng installer. Tumungo sa ang link na ito upang i-download ang pinakabagong installer at pagkatapos ay patakbuhin ang installer upang i-install ang git sa iyong Windows machine.

Pagsisimula

Ngayon na mayroon ka ng iyong system setup. Kailangan mong simulan ang isang git repository. Ano ang isang repository na tinatanong mo? Ito ang folder/direktoryo kung saan nakaimbak ang lahat ng file ng iyong proyekto. Narito ang mga hakbang upang simulan ang isang git repository.

  • Ilunsad ang Terminal/ Command Prompt sa iyong makina.
  • Mag-navigate sa direktoryo ng proyekto na naglalaman ng lahat ng mga file ng proyekto. (Karaniwang ginagawa ito gamit ang cd command sa lahat ng platform)
  • ngayon na nasa loob ka ng iyong direktoryo ng proyekto ay naglalabas ng sumusunod na utos: git init

Git Init

Ngayong nasimulan mo na ang iyong git repository, alam ng git na kailangan nitong subaybayan ang mga pagbabago sa lahat ng mga file sa direktoryo. Malalaman na ngayon ng Git ang bawat oras na magdagdag o mag-alis ka ng anumang mga file sa direktoryo ng proyekto o gumawa ng anumang mga pagbabago.

Paggawa ng mga Pagbabago at Pagbibigay ng iyong Unang Commit

Ang pinakamahalagang bahagi tungkol sa anumang VCS ay ang pagsubaybay sa mga pagbabago. Anumang oras na mag-isyu ka ng pagbabago sa direktoryo ng proyekto, makikita ito sa katayuan ng repositoryo. Sige at magdagdag ng file sa direktoryo o gumawa ng pagbabago sa isang umiiral nang file. Pagkatapos gawin ito, hindi mo maiisyu ang sumusunod na utos upang suriin ang katayuan ng file sa repositoryo.

  • git status

Git Satus

Tulad ng nakikita mo, sinabi ng git na mayroong isang hindi sinusubaybayang file. Ngayon ay kailangan nating idagdag ang hindi sinusubaybayang file sa staging area ng git. Maaari mong isipin ang lugar ng pagtatanghal ng dula bilang ang intermediate na yugto bago ma-finalize ang isang pagbabago. Upang idagdag ang file sa lugar ng pagtatanghal ng dula isyu ang sumusunod na command:

  • git add

Sa pag-isyu ng git add command maaari kang mag-reissue ng status command para makita ang status ng file.

Ngayon, na naidagdag na ng file ang file sa staging area, oras na para tapusin ang iyong pagbabago gamit ang isang commit message. Ilabas ang sumusunod na utos:

  • git commit – m “YOUR_MESSAGE”

Palitan ang bahagi sa ilalim ng mga panipi ng iyong sariling pasadyang mensahe. Ngayon, suriin ang iyong repository na may git status. Mapapansin mong matagumpay ang commit.

Git Commit

Sumasanga

Ang pagsasanga ay isang pangunahing paksa sa sistema ng pagkontrol ng bersyon. Napakahalaga na paghiwalayin ang iyong kuwadra (mga bagay na gumagana nang perpekto at nasubok) na mga bahagi ng proyekto mula sa mga bahaging kasalukuyang ginagawa. Mahalaga ito dahil kailangan mong tiyakin na ang mga taong gumagamit ng iyong software ay hindi maaapektuhan ng mga pagbabagong gagawin mo habang nagdaragdag ng bagong feature. Dito nagsasanga-sanga ako para magpa-picture. Nakakatulong itong ihiwalay ang iyong code base sa iba't ibang sandbox para hindi maapektuhan ang iyong gumaganang bahagi ng anumang pagbabagong gagawin mo sa iba pang bahagi.

Ang paglikha ng isang sangay gamit ang Git ay medyo simple. Ilabas lang ang sumusunod na kumander

  • git checkout -b “BRANCH_NAME”

Pagkatapos gawin ito maaari mong suriin kung saang sangay ka naroroon sa pamamagitan ng pagbibigay ng sumusunod na utos:

  • sangay ng git

sangay ng git

Pagbabahagi ng iyong Code sa GitHub

Matagumpay mong natutunan ang mga batayan ng kontrol ng bersyon gamit ang git. Ngayon ay oras na para isapubliko ang iyong proyekto sa pamamagitan ng pagbabahagi nito sa komunidad ng developer. Ito ang unang hakbang patungo sa open source software development. Ang ibig sabihin ng open sourcing ng iyong code ay pagmamarka na ito ay pampubliko para matingnan ito ng iba, makapag-ambag sa pag-unlad nito at kung kinakailangan, iakma ito sa sarili nilang mga proyekto.

github

 

Tiyaking mayroon kang GitHub account bago magpatuloy.

Kapag nakapag-sign up ka na. Sige at gumawa ng repository sa GitHub tulad ng ipinapakita sa screenshot sa ibaba.

Magdagdag ng GitHub

 

Sa sandaling lumikha ka ng repositoryo. Ipapakita sa iyo ang mga karagdagang hakbang upang gabayan ka sa pagdadala ng iyong proyekto sa GitHub.

Tagubilin sa GitHub

Dahil nakagawa ka na ng repository. Kailangan mo lang itulak ito. Ilabas ang sumusunod na utos upang gawin ito.

  • git remote add origin REMOTE_URLgit push -u pinanggalingan master

Kapag tapos na iyon, maaari mong bisitahin ang malayong URL upang tingnan ang iyong mga proyekto. Ang iba sa komunidad ay maaaring mag-ambag sa iyong mga proyekto sa pamamagitan ng pagbibigay ng mga pagbabago.

Konklusyon

Binabati kita. Isa ka na ngayong hakbang na mas malapit sa paglikha ng susunod na malaking bagay sa tech. At sigurado ako na sa paggawa nito, ilalapat mo rin ang madaling gamitin na mga konsepto ng kontrol ng bersyon na itinuro sa iyo ng artikulong ito. Ang mga malalaking kumpanya tulad ng IBM, Google atbp ay may malalaking portfolio ng mga serbisyo na patuloy nilang pinauunlad gamit ang mga makabagong teknolohiya at feature at ang tanging paraan upang mapangasiwaan nila ang napakalaking hanay ng mga produkto na ang bawat isa ay umaabot sa ilang milyong linya ng code ay sa pamamagitan ng kontrol ng mga bersyon mga sistema. Ang mga kumpanya mismo ay maaaring magkaroon ng kanilang in-house na solusyon para sa VCS o umaasa sa sikat na VCS tulad ng Git o Subversion. Karamihan sa mga proyektong open source ng teorya ay available sa publiko sa GitHub. Ito ay tiyak na isang mahalagang kasanayan upang makabisado at malaman kung paano pamahalaan ang malalaking codebase ay epektibong magbabago sa paraan ng iyong pagtatrabaho at madaragdagan din ang iyong kredibilidad.

Aishwar Babber

Si Aishwar Babber ay isang masigasig na blogger at isang digital marketer. Mahilig siyang makipag-usap at mag-blog tungkol sa pinakabagong teknolohiya at mga gadget, na nag-uudyok sa kanya na tumakbo GizmoBase. Siya ay kasalukuyang nagsasanay sa kanyang digital marketing, SEO, at SMO na kadalubhasaan bilang isang full-time na marketer sa iba't ibang mga proyekto. Siya ay isang aktibong mamumuhunan sa AffiliateBay at isang direktor sa ImageStation.

Mag-iwan ng komento