ආයුබෝවන් කිරි වැසියෝ හැමෝටම..මේ thread එකෙන් අපි කතා කරන්නේ git කියන්නේ මොකක්ද , එක ඕන වෙන්නේ අයි , සහ එක use කරන්නේ කොහොමද කියන දේවල් ගැන..
විශේෂයෙන් කියන්ටෝන මේක
@HAneo මැතිතුමා ගේ #එකටගොඩයමු මෙහෙයුමට අනුපුරකයක් (supplementary ) විදිහට පලකරන නුලක්..ඒ ගැන හානියෝ මහතාටත් ස්තුති කරන ගමන් අපි වැඩේට බහිමු..
මොකක්ද git කියන්නේ?
git කියන්නේ version control system එකක්..ගොඩක් සරලව කිව්වොත් digital file එකක versions manage කරගන්න උදව් වෙන ටූල් එකක් ..
versions manage කරනවා කියන එක තව ටිකක් පැහැදිලි කරන්න පුලුවන්ද?
එල..අපි පාවිච්චි කරන ඕනෑම file එකක් අපි change කරනවා නේ..එහෙම file එකකට change එකක් කරාම අන්තිම output එක අර file එකේ version එකක් කියල කියන්නේ..
උදාහරණයකට අපි හිතමු ඔයාගේ computer එකේ ඔයා sample.txt නමෙන් new Text Document එකක් හදනවා කියල ..ඒක ඒ file එකේ first version එක..
දැන් ඔයා ඒ file එක open කරල මොනවහරි ටයිප් කරලා save කරනවා..දැන් තියෙන text file එකට අපි කියනවා sample.txt file එකේ second version එක කියලා..ඔයා ආයෙම ඒ file එක edit කරල save කරොත් එතකොට sample.txt file එකේ අලුත් version එකක් තමයි හැදෙන්නේ ..
git වලින් කරන්නේ මේ විදිහට හැදෙන versions, පිළිවෙලට system එකක track කරලා තියාගන්න එක..එතකොට අපිට file versions අතරේ ඕන ඕන විදිහට මාරු වෙන්න පුළුවන්..
හරි..එත් මට දැනගන්න පුලුවන්ද ඇත්ත ලෝකෙදි git use වෙන විදිහ ගැන ?
ok ..දැන් ඔයා හිතන්න ඔයා මොකක්හරි ලොකු software එකක වැඩ කරන කෙනෙක් ..files දහස් ගානක් තියෙන app එකක් ..මේ app එකේ ඔයාට ඕන වෙනවා අලුතින් feature එකක් එකතු කරන්න..ඉතින් ඔයා එකට ඔයාට හරි කියල හිතෙන විදිහට වැඩ දාලා code එකත් ලියනවා කියලා අපි හිතමු..මේ වැඩේ දී files 10ක් 15ක් විතර සෑහෙන change වෙනවා කියලත් හිතමු කෝ ..
ඔන්න දැන් ඔයා code එක ටිකක් ගහල රෑ වෙලා නිසා edit කරපු files ටික save කරල ide එකත් close කරල නිදාගන්නවා..හැබැයි ඔයාට පහුවෙනිදා උදේ කල්පනා වෙනවා ඒ code එක ලියපු විදිහ sampurna වැරදියි කියල..දැන් මොකද කරන්නේ ..files undo කරන්නත් විදිහක් නෑ ..දැන් ඔයාට සිද්ද වෙනවා කරපු සේරම changes manually බල බලා ain කරන්න..
හැබැයි එහෙම කරලත් වැඩේ හරියයිද sure නෑ ..මොකද ඔයාට සමහර files වල මොනවද edit වුනේ කියල හරියටම මතක නැති වෙන්න පුළුවන්..එහෙම සීන් එකකදී ඔයාට වැඩ දෙකක් සෙට් වෙනවා ..එකක් ara kalin raa ලියපු code එක undo කරන්න ඕන ..දෙවෙනියට එහෙම undo කරලා හදාගත්ත repo එක ඇත්තටම වැඩ ද කියලත් බලන්න ඕන ..
හැබැයි ඔයා ඔයාගේ project එක git වලින් manage කරන්න set කරගෙන තිබුන නම් ඔය කිසි කරදරයක් නෑ ..එක command එකෙන් සේරම කරපු changes undo වෙලා project එක තිබ්බ තත්වෙටම එනවා ..
මරු නේ..ඕක use කරන්න පුළුවන් software සීන් එකේ ඉන්න අයට විතරද?
අපෝ නෑ ..හිතන්න ඔයා novel ලියන කෙනෙක් කියල .. එහෙමත් නැත්නම් latex document එකක් ලියන scientist කෙනෙක් කියල .. ඔය මොන file එක වුනත් git වලින් මන් කලින් කියපු විදිහට track කරගන්න පුලුවන් ..
එහෙනම් graphic design files,images එහෙමත් track කරන්න පුළුවන් ඇති නේද ?
අන්න ඒවා නම් බෑ පුතේ.. git වලින් images, .psd files වගේ binary files track කරන එක නම් කරන්න ලේසි වැඩක් නෙවෙයි..documents related ඕන file එකක version manage කරගන්න නම් git පංකාදු පහයි..
හරි අපි දැන් දන්නවනේ git කියන්නේ මොකක්ද කියලා..අපි practical example එකක් බලමුද දැන් ?
එළම..සේරටම කලින් මෙන්න මේ tutorial එක බලාගෙන මුලින්ම ඔයාගේ computer එකේ git setup කරගෙන ඉන්ටකෝ
…
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
install කරගත්තට පස්සේ බලන්න ඕනේ අපිට command prompt එකෙන් git access කරන්න පුලුවන්ද කියලා ..ඒකට command prompt එකක් open කරලා git කියලා type කරල enter කරන්න..එතකොට මෙන්න මෙහෙම පටන් ගන්න එකක් වැටෙනවා නම් ඒ කියන්නේ ඔයාගේ computer එකේ git install වෙලා තියෙන්නේ දැන්..
ඊට පස්සේ ?
දැන් git install වෙලා නිසා අපෙ වැඩේට බහින්න පුළුවන්..
මුලින්ම ඔයා කැමති තැනක හදාගන්න folder එකක් කැමති නමකින් ..මන් මගේ macbook එකේ Desktop එකේ හදාගන්නවා GitTest කියල folder එකක් ..ඊලග steps ඔක්කොටම මන් example එක විදිහට use කරන්නේ මේ folder එක ..
දැන් මේ folder එක ඇතුලේ හදන්න text files කීපයක්...ඒ හදාගත්ත files වල මොන මොනවහරි ලියල save කරන්න..
හරිද? ඔන්න දැන් අපි ගාව තියෙනව අපේ project එකේ initial version එක..දැන් අපි git වලට කියන්න ඕනේ මේ folder එකේ files වලට ඉස්සරහට කරන changes track කරන්න කියල..
මේ වැඩේට git ට අපේ project එක සම්බන්ධ information store කරගන්න තැනක් අපි හදල දෙන්න ඕනේ අපේ project එක ඇතුළේ ..ඒක අපි කරන්නේ අපේ project එකේ git initialize කරන එකෙන්.
command prompt එකෙන් ඔයාගේ folder එකට ගිහින්, git init ගහලා git initialize කරගන්න පුළුවන්..
එතකොට එයි මෙහෙම output එකක්.. මේක ආවා කියන්නේ වැඩේ හරි ..
Initialized empty Git repository in /Users/OpenSourceIsTheWay/Projects/GitTest/.git/
මේ විදිහට අපිට අපේ project එකට git දාගන්න පුළුවන් ..හැබැයි ඒ මදි ..අපි තෝර ගන්න ඕනේ git ට track කරන්න බාර දෙන්න ඕනේ මොන files ද කියලා..එකට වෙනම command එකක් තියෙනව ..එක තමා git add..
ඔයාගේ folder එකේ ඉඳන් command prompt එකේ run කරන්න..
මේ command එකෙන් අපි git ට බාර දෙන්න ඕනේ files ටික තෝරා ගන්නවා..(මෙතෙන්දි නම් අපේ folder එකේ තියෙන සේරම files මන් තෝරා ගන්නවා..dot එකෙන් කියන්නේ folder එකේ තියෙන සේරම තෝරාගන්න කියල )
මෙහෙම files තෝරාගන්න එකට අපි කියන්නේ stage කරනවා කියල..දැන් අපේ folder එකේ සේරම files තියෙන්නේ staged area එකේ ..
දැන් අපිට පුළුවන් තෝරා ගත්ත (stage කරපු) files ටික git ට බාර දෙන්න.. එකටත් වෙනම command එකක් තියෙනව..එක තමයි git commit කියන්නේ..
ඔයාගේ folder එකේ ඉඳන් command prompt එකේ run කරන්න මේ command එක…
දැන් ඔයාල බලනවා ඇති අර මොකක්ද -m එකක් ගහල කරේ කියලා..අපි git ට files බාර දෙනකොට ඒ බාරදෙන දේවල් ගැන පොඩි විස්තරයක් එක්ක තමයි බාර දෙන්න ඕන..ඒ විස්තරය තමයි අපි -m ගහල “” ඇතුලේ enter කරන්නේ ..
ඔන්න දැන් අපේ project setup එක හරි …දැන් තමයි git ගේ නියම වැඩ කෑලි ටික පටන් ගන්න යන්නේ ..but සමහර අයට මේ ටිකත් too complex වෙන්න පුළුවන් ..විශේෂයෙන් command prompt එක පාවිච්චි කරලම නැති අයට ..ඒ අයවත් ඇදගෙන යන්න ඕන නිසා අපි අදට මෙතනින් නවත්වමු.. හෙට ත්රෙඩ් එකෙන් බලමු git වලින් අපේ project එකේ දාන්න පුළුවන් වැඩ කෑලි මොනවද කියලා..
මේකේ විස්තර කරලා තියෙන දේවල් වල අපැහැදිලි තැනක් හරි ඉස්සරහට tutorials improve කරන්න suggestions හරි තියෙනවා නම් අනිවාර්යෙන් ම comments වලින් කියන්න
හැමෝටම සුබ දවසක්
#එකටගොඩයමු