पाठ 14 / 26

Rebase क्या करता है

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

main पर rebase करें

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

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