Pull Request කියන්නෙ රචනාවක්. Commit එකක් කියන්නෙ ඒ රචනාවෙ එක ඡෙදයක්.
රචනා අපි පොඩි කාලෙ ඕනි තරම් ලියල ඇති ඔයාට ලැබුනොත් ඔයාගෙ සුරතල් සතා ගැන රචනාවක් ලියන්න ඔයා කවමදාකවත් ඒ රචනාවට ඔයා කැමති විෂය ගැන ලියන්නෙ නෑ. ඒ වගේම ඔයා පත්තරයක, බ්ලොග් එකක “ශ්රී ලන්කාවේ පරිසර පද්ධතිය” වගේ මාතෘකාවක් යටතෙ කියවල නැතුව ඇති Docker වගේ Software Development සම්බන්ධ දෙයක්. මොකද අපි මොනව හරි ලියවිල්ලකට මතෘකාවක් දුන්නට පස්සෙ ඒ ලියවිල්ල ඇතුලෙ ලියන්නෙ ඒ මාතෘකාවට අදාල දේවල් විතරයි.
ඒ වගේම අපි ඕනිම ලියවිල්ලක් ලියද්දි ඒ ලියන ලිපිය ඇතුලෙ ඡේද වෙන් කරනව. එතකොට ඒ පොඩි ඡේදයකට අපි එකතු කරන්නෙ ඒ ලිපිය ලියන්න තෝරගත්ත මාතෘකාව යටතෙ තියෙන තව අනු කොටසක්. මේ අනුකොටසටත් අපිට ඕනි නන් වෙනම මාතෘකාවක් දෙන්න පුලුවන්. එතකොට ආයෙ අර විදියටම අපි ඒ පොඩි ඡේද කොටස ඇතුලේ ඒ වෙන් කරගත්ත අනු කොටසට අදාල දේවල් විතරයි ලියන්නෙ.
දැන් මම ඔය වැඩේම මේ ලිපිය ඇතුලෙත් කරල තියෙනව. මගෙ පළවෙනි ඡේද කීපය මම වෙන් කරල තියෙන්නෙ මාතෘකාවක් සහිත ලියවිල්ලක අන්තර්ගතය ගැන කතා කරන්න.හරි දැන් ඔය ටික ඔහොම්ම තියෙද්දි අපි යමු ඊළග කොටසට.
Software Development ටීම් එකක් එක්ක වැඩ කරද්දි කරගන්න තියෙන අමාරුම වැඩක් තමා හැමෝම මහන්සි වෙලා ලියන කෝඩ් ටික පිළිවෙලකට එකතු කරගන්න එක. මෙන්න මේ වැඩෙට අපි පාවිච්චි කරන්නෙ GIT/ Mercury / වගේ Version Controlling Softwares. මේ Software හරියට පාව්ව්වි කරන්න දැනගෙන ඉන්න එක මේ වෙනකොට ඔයාගෙ Skill Set එකේ අනිවාර්යෙන්ම තියෙන්න ඕනි හැකියාවක්.
අපි ගොඩක් වෙලාවට දකින දෙයක් තමා Git Use කරන්න ඕනි කරන දැනුම අඩුවක් නැතුව තිබ්බත් හරියට PR එකක් ඕපන් කරල Commit ටිකයි හරියට කරගන්න බැරිව සම්පූර්ණ Project එකම අවුල්ජාලයක් කරගන්න එක. මේක වෙන්න හේතුව තමා මේ වැඩේ හරියට තෙරුම් අරගෙන නැති වීම.
ඇත්තටම Pull Request එකක් කියන්නෙ අපි ලියන්න පුරුදු වෙලා ඉන්න රචනාවක් ලියවිල්ලක් වගේ දෙයක්. ඔයා Open කරන ඕනිම Pull request එකකට අනිවාර්යෙන්ම හොද Title එකක් තිබිය යුතුමයි.
“Revamp README to make examples front and center” මේ තියෙන්නෙ PR Title එකක්. දැන් ඔය Title යටතෙ තියෙන Commit Message මොන වගේ වෙන්න පුළුවන්ද? ඒව ඇතුලෙ අනිවාර්යෙන්ම තියෙන්නෙ රචනාවෙ මාතෘකාවෙන් කියල තියෙනව වගේ README එක සම්බන්ධ දේවල් ටිකක් තමා. මේ PR එක අතුලෙ ඔයාට Login Function එකක Bug Fix එකක්, අලුතෙන් ලියපු function එකකට හදපු Testcase එකක් හම්බ වෙන්න කොහෙත්ම ඉඩක් නෑ. එහෙම වෙනව කියන්නෙ ඔයා රචනාව මාතෘකාවෙන් පිට ලියල කියන එක.
පුළුවන් තරන් අපි පොඩි පොඩි ඡේද වෙන් කරල ලිව්වොත් අපිට ඒ ලියවිල්ල කියවන්න ලේසියි. ඒ වගේම තමා මෙතනදිත් අපිට අපේ ප්රධාන මාතෘකාවට අදාල වෙන් කරගන්න පුළුවන් පොඩිම කොටස් ටික එකතු කරල ඒක Commit එකක් කරන්න.ඒ වගේම Commit එකේ තියෙන්නෙ මොනවද කියන එක imperative sentences එකක් විදියට, ඒ කියන්නෙ අණදීමක් විදියට ලියන්න (Add login validation, Fix typo in footer, Update README, Remove unused import, …).
අපි Git Commit එකක් කියවන්නෙ මේ වගේ “ඔයා මේ Commit එක Apply කරොත් මෙන්න මේ දේ තමා සිද්ධ වෙන්නෙ” කියල. එතකොට ඕය වාක්යය If applied, this commit wil Updated README කිව්වොත් Grammatically වැරදියි. If applied, this commit will Update README කියල ලිව්වොත් තමා ඒක හරි යන්නෙ.
මේ කතාවෙ විදියට ඔයාගෙ Pull Request ටිකයි Commit ටිකයි පිළිවල කරගන්න ඒක ඔයාගෙ වැඩ ටික පිලිවල කරගන්න වගේම ඔයාගෙ කෝඩ් එක Project එකක් මැද පිලිවලට තියාගන්නත් උදව්වක් වෙයි.
#SoftwareDevelopment #softwareengineering
රචනා අපි පොඩි කාලෙ ඕනි තරම් ලියල ඇති ඔයාට ලැබුනොත් ඔයාගෙ සුරතල් සතා ගැන රචනාවක් ලියන්න ඔයා කවමදාකවත් ඒ රචනාවට ඔයා කැමති විෂය ගැන ලියන්නෙ නෑ. ඒ වගේම ඔයා පත්තරයක, බ්ලොග් එකක “ශ්රී ලන්කාවේ පරිසර පද්ධතිය” වගේ මාතෘකාවක් යටතෙ කියවල නැතුව ඇති Docker වගේ Software Development සම්බන්ධ දෙයක්. මොකද අපි මොනව හරි ලියවිල්ලකට මතෘකාවක් දුන්නට පස්සෙ ඒ ලියවිල්ල ඇතුලෙ ලියන්නෙ ඒ මාතෘකාවට අදාල දේවල් විතරයි.
ඒ වගේම අපි ඕනිම ලියවිල්ලක් ලියද්දි ඒ ලියන ලිපිය ඇතුලෙ ඡේද වෙන් කරනව. එතකොට ඒ පොඩි ඡේදයකට අපි එකතු කරන්නෙ ඒ ලිපිය ලියන්න තෝරගත්ත මාතෘකාව යටතෙ තියෙන තව අනු කොටසක්. මේ අනුකොටසටත් අපිට ඕනි නන් වෙනම මාතෘකාවක් දෙන්න පුලුවන්. එතකොට ආයෙ අර විදියටම අපි ඒ පොඩි ඡේද කොටස ඇතුලේ ඒ වෙන් කරගත්ත අනු කොටසට අදාල දේවල් විතරයි ලියන්නෙ.
දැන් මම ඔය වැඩේම මේ ලිපිය ඇතුලෙත් කරල තියෙනව. මගෙ පළවෙනි ඡේද කීපය මම වෙන් කරල තියෙන්නෙ මාතෘකාවක් සහිත ලියවිල්ලක අන්තර්ගතය ගැන කතා කරන්න.හරි දැන් ඔය ටික ඔහොම්ම තියෙද්දි අපි යමු ඊළග කොටසට.
Software Development ටීම් එකක් එක්ක වැඩ කරද්දි කරගන්න තියෙන අමාරුම වැඩක් තමා හැමෝම මහන්සි වෙලා ලියන කෝඩ් ටික පිළිවෙලකට එකතු කරගන්න එක. මෙන්න මේ වැඩෙට අපි පාවිච්චි කරන්නෙ GIT/ Mercury / වගේ Version Controlling Softwares. මේ Software හරියට පාව්ව්වි කරන්න දැනගෙන ඉන්න එක මේ වෙනකොට ඔයාගෙ Skill Set එකේ අනිවාර්යෙන්ම තියෙන්න ඕනි හැකියාවක්.
අපි ගොඩක් වෙලාවට දකින දෙයක් තමා Git Use කරන්න ඕනි කරන දැනුම අඩුවක් නැතුව තිබ්බත් හරියට PR එකක් ඕපන් කරල Commit ටිකයි හරියට කරගන්න බැරිව සම්පූර්ණ Project එකම අවුල්ජාලයක් කරගන්න එක. මේක වෙන්න හේතුව තමා මේ වැඩේ හරියට තෙරුම් අරගෙන නැති වීම.
ඇත්තටම Pull Request එකක් කියන්නෙ අපි ලියන්න පුරුදු වෙලා ඉන්න රචනාවක් ලියවිල්ලක් වගේ දෙයක්. ඔයා Open කරන ඕනිම Pull request එකකට අනිවාර්යෙන්ම හොද Title එකක් තිබිය යුතුමයි.
“Revamp README to make examples front and center” මේ තියෙන්නෙ PR Title එකක්. දැන් ඔය Title යටතෙ තියෙන Commit Message මොන වගේ වෙන්න පුළුවන්ද? ඒව ඇතුලෙ අනිවාර්යෙන්ම තියෙන්නෙ රචනාවෙ මාතෘකාවෙන් කියල තියෙනව වගේ README එක සම්බන්ධ දේවල් ටිකක් තමා. මේ PR එක අතුලෙ ඔයාට Login Function එකක Bug Fix එකක්, අලුතෙන් ලියපු function එකකට හදපු Testcase එකක් හම්බ වෙන්න කොහෙත්ම ඉඩක් නෑ. එහෙම වෙනව කියන්නෙ ඔයා රචනාව මාතෘකාවෙන් පිට ලියල කියන එක.
පුළුවන් තරන් අපි පොඩි පොඩි ඡේද වෙන් කරල ලිව්වොත් අපිට ඒ ලියවිල්ල කියවන්න ලේසියි. ඒ වගේම තමා මෙතනදිත් අපිට අපේ ප්රධාන මාතෘකාවට අදාල වෙන් කරගන්න පුළුවන් පොඩිම කොටස් ටික එකතු කරල ඒක Commit එකක් කරන්න.ඒ වගේම Commit එකේ තියෙන්නෙ මොනවද කියන එක imperative sentences එකක් විදියට, ඒ කියන්නෙ අණදීමක් විදියට ලියන්න (Add login validation, Fix typo in footer, Update README, Remove unused import, …).
අපි Git Commit එකක් කියවන්නෙ මේ වගේ “ඔයා මේ Commit එක Apply කරොත් මෙන්න මේ දේ තමා සිද්ධ වෙන්නෙ” කියල. එතකොට ඕය වාක්යය If applied, this commit wil Updated README කිව්වොත් Grammatically වැරදියි. If applied, this commit will Update README කියල ලිව්වොත් තමා ඒක හරි යන්නෙ.
මේ කතාවෙ විදියට ඔයාගෙ Pull Request ටිකයි Commit ටිකයි පිළිවල කරගන්න ඒක ඔයාගෙ වැඩ ටික පිලිවල කරගන්න වගේම ඔයාගෙ කෝඩ් එක Project එකක් මැද පිලිවලට තියාගන්නත් උදව්වක් වෙයි.
#SoftwareDevelopment #softwareengineering
