# Version control with Git for complete beginners

> Why every developer uses Git, and the handful of commands that cover 90% of daily work.

*Source: https://velstech.net/git-beginners.ta (Tamil translation of https://velstech.net/git-beginners) · Updated: 2026-08-24*

*Markdown version. [Read the interactive guide](https://velstech.net/git-beginners.ta). English Markdown: https://velstech.net/git-beginners.md.*

---

ஒவ்வொரு டெவலப்பரும் Git ஐப் பயன்படுத்துகிறார்கள். இந்த தளமும் Git-இல் சேமிக்கப்பட்டுள்ளது. ஆனால் இது பூஜ்ஜியத்திலிருந்து அரிதாகவே விளக்கப்படுகிறது. நல்ல செய்தி: மன மாதிரியைப் புரிந்துகொண்டவுடன் Git எளிமையானது – மேலும்
தினசரி வேலையில் 90% க்கு உங்களுக்கு ஒரு சில கட்டளைகள் மட்டுமே தேவை.

## Git என்ன பிரச்சினையை தீர்க்கிறது?

ஒரு ஆவணத்தைத் திருத்திக்கொண்டு, "இந்த பதிப்பு சிறப்பாக இருந்தது" என்று நினைப்பதை கற்பனை செய்யுங்கள். பதிப்பு கட்டுப்பாடு இல்லாமல், நீங்கள் நகல்களை சேமிப்பீர்கள்: `report_final.doc`,
`report_final_v2.doc`, `report_FINAL_actually.doc`. குழப்பம்.

Git உங்களுக்கு **ஒவ்வொரு சேமிப்பு புள்ளியிலும் உங்கள் முழு திட்டத்தின் ஸ்னாப்ஷாட்டை** வழங்குகிறது.
நீங்கள்:

- எந்த கடந்த பதிப்புக்கும் திரும்பிச் செல்லலாம்

- என்ன மாற்றப்பட்டது, எப்போது என்று துல்லியமாக பார்க்கலாம்

- உங்கள் வேலை குறியீட்டை ஆபத்தில் ஆழ்த்தாமல் சோதனைகளை முயற்சிக்கலாம்

- மற்றவர்களை மேலெழுதாமல் ஒத்துழைக்கலாம்

## மன மாதிரி: சேமிப்புகள் மற்றும் சேமிப்பு-புள்ளிகள்

உங்களுக்குத் தேவையான இரண்டு கருத்துக்கள்:

- கமிட் – ஒரு சேமிப்பு புள்ளி. "fix login bug" போன்ற செய்தியுடன் கூடிய உங்கள் கோப்புகளின் ஸ்னாப்ஷாட்.

- ரெப்போசிட்டரி (ரெப்போ) – Git கண்காணிக்கும் ஒரு கோப்புறை. உங்கள் கமிட்கள் அனைத்தும் இங்கு வாழ்கின்றன.

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

## எல்லாவற்றையும் உள்ளடக்கும் 5 கட்டளைகள்

முழு ஆரம்பநிலையாளரின் கருவித்தொகுப்பு இதோ:

```
git init          # இந்த கோப்புறையை கண்காணிக்கத் தொடங்குங்கள் (ஒருமுறை செய்யவும்)
git add .         # உங்கள் மாற்றங்களை நிலைநிறுத்துங்கள் (எதை சேமிக்க வேண்டும் என்பதை தேர்வு செய்யவும்)
git commit -m "message"   # ஒரு சேமிப்பு புள்ளியை உருவாக்கவும்
git status        # என்ன மாறியது? (தொடர்ந்து சரிபார்க்கவும்)
git log           # கமிட்களின் வரலாற்றைப் பார்க்கவும்
```

`add` பின்னர் `commit` என்பது தாளம். முதலில் எதை சேமிக்க வேண்டும் என்பதை தேர்வு செய்கிறீர்கள்,
பின்னர் நீங்கள் ஸ்னாப்ஷாட்டை எடுக்கிறீர்கள். நீங்கள் `git status` ஐ தொடர்ந்து இயக்குவீர்கள் – இது ஒரு
பாதுகாப்பு சரிபார்ப்பு, ஒருபோதும் சுமையல்ல.

## பிரான்ச்சிங்: இணை பிரபஞ்சங்கள்

ஒரு **பிரான்ச்** என்பது தனித்தனி வளர்ச்சிக் கோடு – முக்கிய வரியை பாதிக்காமல் நீங்கள் பரிசோதனை செய்யக்கூடிய திட்டத்தின் நகல்.

```
git branch new-feature   # ஒரு பிரான்ச்சை உருவாக்கவும்
git switch new-feature   # அதற்கு நகரவும்
# ...இங்கு வேலை செய்து கமிட் செய்யவும்...
git switch main          # திரும்பிச் செல்லவும்
git merge new-feature    # வேலையை main-க்கு கொண்டு வரவும்
```

தனி ஆரம்பநிலையாளர்களுக்கு, பிரான்ச்கள் விருப்பமானதாக உணர்கின்றன – முதலில் அவை அவ்வாறே உள்ளன. ஆனால்
அவற்றை ஆரம்பத்தில் கற்றுக்கொள்வது உண்மையான அணிகள் எவ்வாறு வேலை செய்கின்றன என்பதில் உங்களை வசதியாக்குகிறது. தங்க விதி:
**ஆபத்தான ஒன்றை முயற்சிக்கும்போது நேரடியாக main-ல் கமிட் செய்யாதீர்கள்**.

## GitHub: கிளவுடில் Git

**GitHub** என்பது Git ரெப்போசிட்டரிகளுக்கான ஹோஸ்டிங் சேவை – உங்கள் குறியீட்டிற்கான Dropbox, மேலும் ஒத்துழைப்பு கருவிகள். அவற்றை இணைக்கும் கட்டளைகள்:

```
git clone URL        # உங்கள் கணினிக்கு ஒரு ரெப்போவை நகலெடுக்கவும் (தொடக்கம்)
git push             # உங்கள் கமிட்களை பதிவேற்றவும்
git pull             # மற்றவர்களின் கமிட்களை பதிவிறக்கவும் (அல்லது வேறு கணினியிலிருந்து உங்கள் சொந்தத்தை)
```

`push` உங்கள் சேமிப்புகளை GitHub-க்கு அனுப்புகிறது; `pull` அவற்றை கீழே கொண்டு வருகிறது.
இதுதான் இந்த வலைத்தளம் எவ்வாறு வெளியிடப்படுகிறது – ஒரு push GitHub Pages-ஐ வெளியிட தூண்டுகிறது.

## தவறுகளை சரிசெய்தல் (நம்பிக்கை அளிக்கும் பகுதி)

பதிப்பு கட்டுப்பாட்டின் சிறந்த விஷயம்: எதுவும் நிரந்தரமானது அல்ல.

```
git restore file         # ஒரு கோப்பில் கமிட் செய்யப்படாத மாற்றங்களை நிராகரிக்கவும்
git reset --hard HEAD    # கமிட் செய்யப்படாத மாற்றங்களை முழுவதுமாக நிராகரிக்கவும்
git revert     # ஒரு கடந்த கமிட்டை பாதுகாப்பாக மீளமைக்கவும்
git log                  # உங்களுக்குத் தேவையான எந்த commit-id-ஐயும் கண்டுபிடிக்கவும்
```

குழப்பமா? Restore செய்யுங்கள். எல்லாம் உடைந்ததா? Reset செய்யுங்கள். மோசமான ஒன்றை கமிட் செய்தீர்களா? Revert செய்யுங்கள்.
Git-ன் முழு வேலையும் நீங்கள் செய்ததை மீளமைக்க அனுமதிப்பதே.

## முதல் நாளிலிருந்து நல்ல பழக்கங்கள்

- சிறியதாகவும் அடிக்கடியும் கமிட் செய்யுங்கள். ஒவ்வொரு அம்சம்/திருத்தத்திற்கும் ஒரு சேமிப்பு புள்ளி, தெளிவான செய்தியுடன்.

- நேர்மையான கமிட் செய்திகளை எழுதுங்கள். "fix login bug" என்பது "stuff" என்பதை விட சிறந்தது. எதிர்கால-நீங்கள் நன்றி சொல்வீர்கள்.

- ஆபத்தை எடுப்பதற்கு முன் கமிட் செய்யுங்கள். பிறகு எப்போதும் பின்னோக்கிச் செல்லலாம்.

- push செய்வதற்கு முன் git status ஐ சரிபார்க்கவும், எனவே என்ன வெளியே போகிறது என்பது உங்களுக்குத் தெரியும்.

## ஒரு பொதுவான முதல் அமர்வு

```
$ cd ~/myproject
$ git init                    # கண்காணிக்கத் தொடங்குங்கள்
$ git add .
$ git commit -m "எனது பயன்பாட்டின் ஆரம்ப பதிப்பு"
$ git branch main             # முக்கிய பிரான்ச்சுக்கு பெயரிடுங்கள் (பெரும்பாலான அமைப்புகளில் ஏற்கனவே அமைக்கப்பட்டுள்ளது)
# ... சில கோப்புகளைத் திருத்தவும் ...
$ git status                  # "modified: index.html"
$ git add .
$ git commit -m "டார்க் மோட் டாக்கிளை சேர்க்கவும்"
$ git log --oneline           # 2 கமிட்கள், நன்றாகவும் சுத்தமாகவும்
```

Git பெரியதாக தோன்றுகிறது, ஆனால் அது உண்மையில்: **சேமிப்பு புள்ளிகள் (கமிட்), இணை கோடுகள்
(பிரான்ச்), மற்றும் ஒத்திசைவு (push/pull)**. அந்த மூன்று கருத்துக்களில் தேர்ச்சி பெற்றால், நீங்கள்
பதிப்பு கட்டுப்பாட்டை ஒரு நிபுணரைப் போல பயன்படுத்துகிறீர்கள். மேலும் சிறந்த பகுதி – நீங்கள் தொடங்கியவுடன், அது இல்லாமல் நீங்கள் ஒருபோதும் வேலை செய்ய விரும்ப மாட்டீர்கள்.

---

*VelsTech – https://velstech.net/git-beginners.ta.md*
