எப்படிச் செய்வது/கிட் பயன்படுத்துவது எப்படி?

கிட் அல்லது ஜிட் (Git) என்பது ஒரு திருத்தக் கட்டுப்பாடு (reversion control) மென்பொருள். பல நிரலாளர்கள் சேர்ந்து ஒரு மென்பொருளில் வேலை செய்யவதை ஒருங்கிணைக்கவும், நிரலாக்கத்தின் ஒரு குறிப்பிட்ட நிலைக்கும் மீண்டும் செல்லவும் கிட் உதவுகிறது. அதாவது ஒரு குறிப்பிட்ட கோப்பின் அல்லது கோப்புக்களின் கணத்தின் மாற்றங்களைப் பதிவு செய்து எந்த ஒரு நிலைக்கும் மீண்டும் செல்வதை கிட் ஏதுவாக்கிறது. ஒரு மென்பொருளின் மூலத்தை (source) பல்வேறு கிளைகளாகப் பிரிக்க, அவ்வாறு பிரிக்கப்பட்ட கிளைகளை ஒன்று சேர்க்கவும் கிட் உதவுகிறது.

கிட்டை நீங்கள் லினக்சு, விண்டோசு, மாக் என்று எந்தவித கணினிகள் அல்லது வழங்கிகளிலும் நிறுவிக் கொள்ளலாம். இந்த செய்முறை லினக்சு/உபுண்டு சூழலில் கிட்டைப் பயன்படுத்துவதைச் சிறப்பாக விபரிக்கும்.

நிறுவுதல்

தொகு

லினக்சு

தொகு

டெபியன் அல்லது உபுண்டுவின் பின்வரும் கட்டளையைப் பயன்படுத்தி கிட்டை நிறுவிக் கொள்ளலாம்.

apt-get install git-core

மாக்

தொகு

அப்பிளின் X இயக்குதளங்களில் பின்வரும் நிறுவியைப் பயன்படுத்தி கிட்டை நிறுவலாம்.

http://code.google.com/p/git-osx-installer

விண்டோசு

தொகு

விண்டோசில் நிறுவ பின்வரும் நிறுவியைப் பயன்படுத்திக் கொள்ளலாம்.

http://code.google.com/p/msysgit

முதல் பயன்பாட்டு அமைவுகள்

தொகு

நீங்கள் முதலில் நிறுவிய பின்பு உங்களின் பெயர், மின்னஞ்சல், நீங்கள் விரும்வும் தொகுப்பி, வேறுபாடுகள் காண்பி கருவி போன்றவற்றை பின்வருமாறு அமைத்துக் கொள்ளலாம். இது செய்வது அவசியமில்லை.

பெயர், மின்னஞ்சல்

தொகு
$ git config --global user.name "Murugan Titaniyan"
$ git config --global user.email murugan@example.com

தொகுப்பி

தொகு
$ git config --global core.editor vim

வேறுபாடுகள் காண்பி கருவி

தொகு
$ git config --global merge.tool vimdiff

இதை git config --list என்ற கட்டளையைப் பயன்படுத்திப் பாக்கலாம்.

அடிப்படைகள்

தொகு

ஏற்கனவே உள்ள அடைவொன்றை கிட் களஞ்சியமாக ஆக்குவது (init)

தொகு

அடைவின் வேருக்குச் செல்லுங்கள்

:~/test/vanakkam1$ git init

அங்கு நின்று git init என்ற கட்டளையை தட்டச்சுங்கள். அவ்வாறு செய்த பின் அந்த அடைவு ஒரு கிட் களஞ்சியம் (repository) ஆகிவிட்டது. அவ்வளவுதான். அடிப்படை அந்தளவு எளிமையானது.

ஏற்கனவே உள்ள கிட் களஞ்சியத்தை படியெடுப்பது (clone)

தொகு

ஏற்கனவே உள்ள கிட் களஞ்சியத்தை நீங்கள் பின்வரும் கட்டளையைப் பயன்படுத்திப் படியெடுக்க (clone) முடியும்:

$ git clone படியெடு-களஞ்சியத்தின்-வழி.git

உங்கள் கணினியிலேயே உள்ள உள்ளிட களஞ்சியம் (local repository) என்றால் களஞ்சித்திற்கான வழியை (path) கொடுத்தால் போதுமானது. நீங்கள் வெளிக் களஞ்சியம் (remote repository) ஒன்றைப் படியெடுப்பது என்றால் ஏற்புடைய ஒரு நெறிமுறையைப் (protocol) பயன்படுத்த வேண்டும். எச்.ரி.ரி.பி (http), எசு.எசு.எச் (ssh), (கிட் நெறிமுறை) git ஆகிய நெறிமுறைகள் பெரிதும் வழக்கத்தில் உள்ளவை. இவற்றின் எடுத்துக்காட்டுக்காட்டுக்கள் சில கீழே:

எச்.ரி.ரி.பி.எசு (https)

$ git clone https://git.gitorious.org/vanakkam/vanakkam.git

எசு.எசு.எச் (ssh)

$ git clone git@gitorious.org:vanakkam/vanakkam.git

கிட் நெறிமுறை (git protocol)

$ git clone git://gitorious.org/vanakkam/vanakkam.git

கோப்புக்களை களஞ்சியத்தில் சேர்ப்பது (add), உறுதிப்படுத்துவது (commit)

தொகு

மேற்கூறிய ஒரு வழியைப் பின்பற்றி நீங்கள் ஒரு கிட் களஞ்சியத்தை உருவாக்கி அல்லது படியெடுத்து விட்டீர்கள் என்று வைத்துக் கொள்வோம். இந்தக் களஞ்சியத்தில் நீங்கள் பின்வருமாறு புதிய கோப்புக்களைச் சேர்க்கலாம்.

$ git add .

மேலே உள்ள கட்டளை நீங்கள் புதிதாக உருவாக்கிய எல்லாக் கோப்புக்களையும் களஞ்சியத்தில் சேர்ப்பதற்கான வரிசையில் சேர்க்கும். அத்தோடு களஞ்சியத்தில் உள்ள வேறு கோப்புக்களில் நீங்கள் மாற்றங்கள் செய்து இருந்தால் அந்த மாற்றாங்களையும் களஞ்சியத்தில் உறுதிப்படுத்துவதற்காக குறித்துக் கொள்ளும். இதை அரங்கேற்றுவது (staging) என்று குறிப்பிடுவர். நீங்கள் add கட்டளையைப் பயன்படுத்திய பின்னர் கோப்புக்களை மாற்றங்களைச் செய்தால் அந்த மாற்றாங்கள் களஞ்சியத்தில் சேர்ப்பதற்கு நீங்கள் மீண்டும் add கட்டளையைப் பயன்படுத்த வேண்டும். பின்னர் நீங்கள் உறுதிசெய்த (commit) பின்னரே அவை உண்மையில் களஞ்சியத்தில் சேர்க்கப்படும். $ git status கட்டளையைப் பயன்படுத்தி என்ன என்ன மாற்றாங்களும் புதிய கோப்புக்களும் களஞ்சியத்தில் சேர்க்கப்படவுள்ளன என்று பார்க்கலாம். சில கோப்புக்களை மட்டும் சேர்ப்பதக இருந்தால் $ git add கோப்பு1 கோப்பு2 என்ற கட்டளையைப் பயன்படுத்திச் செய்யலாம்.

ஏற்கனவே களஞ்சியத்தில் தடம் (track) செய்யப்படும் கோப்புக்களில் செய்யப்பட்ட மாற்றங்களையும், புதிதாக மேற்கூறியவாறு சேர்க்கப்பட்ட கோப்புக்களையும் களஞ்சியத்தில் பின்வருமாறு உறுதிப்படுத்தலாம் (commit).

 git commit -m "உறுதிப்படுத்தல் பற்றிய குறிப்புகள்"

$ git status என்ற கட்டளையைப் பயன்படுத்தி உங்கள் களஞ்சியத்தில் எல்லா மாற்றங்களும் உறுதிசெய்யப்பட்டுள்ளவா என்று அறிந்துகொள்லாம்.

கோப்புக்களை நீக்குதல்

தொகு

ஒரு குறிப்பிட்ட கோப்பை நீங்கள் களஞ்சியத்தில் இருந்த நீக்க விரும்பின், ஆனால் கோப்பை அழிக்க விரும்பாவிடின் பின்வரும் கட்டளையைப் பயன்படுத்தலாம்.

$ git rm --cached கோப்பின்பெயர்

நீங்கள் கோப்பை களஞ்சியத்தில் இருந்தும், அடைவில் இருந்தும் நீக்க விரும்பின் பின்வரும் கட்டளையைப் பயன்படுத்தலாம்.

$ git rm கோப்பின்பெயர்

உறுதிப்படுத்தல் வரலாற்றைப் பார்த்தல்

தொகு

ஒரு மென்பொருளை விருத்தி செய்து கொண்டும் போதும் போகு என்ன என்ன நிலைகளில் கோப்புக்கள் சமர்ப்பிக்கப்பட்டு உறுதிப்படுத்தப்பட்டது என்பதை அறிய வேண்டிய தேவை எழும். அதன் போது பின்வரும் கட்டளையை அதன் பல்வேறு கொடிகளோடு (flags) பயன்படுத்தலாம்.

$ git log

மீள்பெறுதல்

தொகு

திருத்தக் கட்டுப்பாட்டின் நோக்கமே ஒரு குறிப்பிட்ட நிலைக்கு மீண்டும் செல்லக் கூடிய வசதியைத் தருவதாகும். கிட்டோடும் நீங்கள் பயன்படுத்திக் கொண்டு இருக்கும் போது பல்வேறு நிலைகளில் நீங்கள் செய்த சில செயற்பாடுகளை மீள்பெற வேண்டி வரலாம். எ.கா நீங்கள் கடைசியாக உறுதிசெய்த வழங்கிய குறிப்பை பின்வரும் கட்டளை கொண்டு மாற்றலாம்.

$ git commit --amend

நீங்கள் கோப்புக்களை உறுதிப்படுத்துவதற்காக அரங்கேற்றி விட்டீர்கள். ஆனால் இன்னும் உறுதிப்படுத்தவில்லை. தற்போது அவற்றுள் ஒரு கோப்பை அல்லது மாற்றத்தை உறுதிப்படுத்துவதில் இருந்து விலக்க விரும்புகிறீர்கள். அவ்வாறாயின் பின்வரும் கட்டளையைப் பயன்படுத்தவும்.

$ git reset HEAD கோப்பின்பெயர்

நீங்கள் ஒரு கோப்பில் செய்த மாற்றங்களை விலத்தி, அதன் முன்னைய உறுதிப்படுத்தப்பட்ட நிலைக்கு செல்ல விரும்பின் பின்வரும் கட்டளையைப் பயன்படுத்துங்கள்.

$ git checkout -- கோப்பின்பெயர்

கலைச்சொற்கள்

தொகு
  • check out - எடு
  • check in - இடு
  • lock - பூட்டு
  • cloning - படியெடு
  • branch - கிளைத்தல்
  • stage - அரங்கேற்று
  • commit - உறுதிசெய்
  • push - தள்ளு
  • pull - இளு
  • merge - இணை
  • rebase
  • tag - குறியீடு
  • revert
  • master - மூலம்
  • origin - தொடக்கம்
  • remote -
  • HEAD - தலை
  • git server - கிட் வழங்கி
  • repository - களஞ்சியம்
  • bare repository
  • protocols local/ssh/http(s)/git - நெறிமுறைகள்
  • work flow - பணி பாய்வுமுறை !
  • develop/stage/production - விருத்தி/அரங்கு/உற்பத்தி !

வெளி இணைப்புகள்

தொகு