# Rebase क्या करता है — Git Fundamentals: Commits, Branches और Collaboration

Source: https://www.skillbyai.com/hi/git/git-rebase-basics

> git rebase से अपने commits नई base पर दोहराएँ, और जानें कि shared branches को rebase क्यों नहीं करना चाहिए।

## main पर rebase करें

यह आपकी ब्रांच के कमिट को नवीनतम `main` के ऊपर, एक-एक करके, दोबारा चलाता है — मर्ज कमिट बनाने के बजाय।

```bash
git switch feature/login
git rebase main
```

Output:

```
Successfully rebased and updated refs/heads/feature/login.
```

## Rebase बनाम merge

Merge हिस्ट्री को जैसे हुआ वैसे ही रखता है, ब्रांच दिखाई देते हैं। Rebase कमिट हिस्ट्री को एक सीधी, रेखीय लाइन में **फिर से लिखता है** — पढ़ने में साफ़, पर कमिट को नए हैश मिलते हैं।

## साझा हिस्ट्री को कभी rebase न करें

चूँकि rebase कमिट फिर से लिखता है, ऐसी ब्रांच को कभी rebase न करें जिसे दूसरे पहले ही pull कर चुके हों — इससे सबको अपनी हिस्ट्री ठीक करनी पड़ेगी। सिर्फ़ अपने unpushed लोकल काम को ही rebase करें।
