# Rebase क्या करता है — गिट

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

> हिस्ट्री मर्ज करने के बजाय कमिट को नए आधार पर दोबारा चलाना।

## 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 करें।
