கேள்வி: கிட்ஹப் - கூட்டுப்பணி குறித்து விரிவாக சொல்லுங்கள்.
பதில்: திறந்த மூல மென்பொருள் திட்டங்களுக்கு கிட்ஹப் மிகவும் பிரபலமானது. உலகம் முழுவதும் உள்ள உருவாக்குபவர்கள் ஒரு குறிப்பிட்ட திட்டத்தில் இணைந்து பணியாற்ற இது வாய்ப்பளிக்கிறது. ஃபோர்க் (fork) மற்றும் புல் ரிக்வஸ்ட் (pull request) போன்ற அம்சங்கள் மூலம் பிற திட்டங்களில் பங்களிக்க முடியும். ஃபோர்க் என்பது ஒரு திட்டத்தின் குறியீட்டை நகல் எடுத்து சொந்த பதிப்பை உருவாக்குவதாகும். புல் ரிக்வஸ்ட் என்பது செய்த மாற்றங்களை அசல் திட்டத்தில் சேர்க்குமாறு கோருவதாகும். இது குறியீட்டு மதிப்பாய்வு (code review) செயல்முறையை எளிதாக்குகிறது. அங்கு மற்ற உருவாக்குபவர்கள் மாற்றங்களை சரிபார்த்து கருத்து தெரிவிக்கலாம். நிறுவனங்களும் மென்பொருள் திட்டங்களை நிர்வகிக்க கிட்ஹப்பை பயன்படுத்துகின்றன. இது கூட்டுப்பணிக்கு மிகவும் ஏற்றது. குறியீட்டை மதிப்பாய்வு செய்யவும் சிக்கல்களைக் கண்காணிக்கவும் (issue tracking) இது கருவிகளை வழங்குகிறது. திட்ட மேலாண்மைக்கு தேவையான அம்சங்களான திட்ட பலகைகள் (project boards) மற்றும் மைல்கற்கள் போன்றவையும் இதில் உள்ளன.
கேள்வி: கிட்ஹப் - செயல்பாடுகள் குறித்து விரிவாக சொல்லுங்கள்.
பதில்: கிட்ஹப்பில் ஒரு திட்டத்தை உருவாக்கும்போது அது ஒரு களஞ்சியம் (repository) என்று அழைக்கப்படுகிறது. இந்த களஞ்சியத்தில் மென்பொருளின் அனைத்து கோப்புகளும் அதன் பதிப்பு வரலாறும் சேமிக்கப்படும். உருவாக்குபவர்கள் உள்ளூர் கணினியில் குறியீட்டை உருவாக்கி பின்னர் அதை கிட்ஹப் களஞ்சியத்திற்கு கமிட் (commit) மற்றும் புஷ் (push) செய்வார்கள். கமிட் என்பது மாற்றங்களைச் சேமிக்கும் செயலாகும். புஷ் என்பது உள்ளூர் மாற்றங்களை கிட்ஹப்பிற்கு அனுப்புவதாகும். மற்ற உருவாக்குபவர்கள் களஞ்சியத்தில் உள்ள மாற்றங்களை கணினிக்கு புல் (pull) அல்லது க்ளோன் (clone) செய்யலாம். க்ளோன் என்பது ஒரு களஞ்சியத்தின் முழு நகலை கணினிக்கு எடுப்பதாகும். புல் என்பது களஞ்சியத்தில் உள்ள புதிய மாற்றங்களை உள்ளூர் பதிப்புடன் புதுப்பிப்பதாகும். கிட்ஹப் வெறும் குறியீட்டை சேமிப்பது மட்டுமல்லாமல், விக்கி (wiki) பக்கங்கள், பக்கங்கள் (pages) மூலம் ஆவணங்களை உருவாக்கவும், திட்டப்பணிகளைப் பற்றிய விவாதங்களை நடத்தவும் உதவுகிறது. இது கிட்ஹப் ஆக்ஷன்ஸ் (GitHub Actions) மூலம் தானியங்கு பணிப்பாய்வு (workflow automation) வசதியையும் வழங்குகிறது. இதன் மூலம் மென்பொருளை உருவாக்குதல், சோதித்தல் மற்றும் வெளியிடுதல் போன்ற பணிகளை தானியக்கமாக்க முடியும்.