Git amend Commit
In this page:
git commit --amend -m "new message"
git commit --amend --no-edit
Last Commit Message बदलना
git commit --amend आपकी सबसे हाल की commit को एक नई से replace करता है, आपको commit message में एक typo fix करने देते हुए बिना history को एक अलग "fix typo" commit से गंदा किए। यह commit करने के seconds बाद notice की गई गलती को correct करने का सबसे clean तरीका है, जब तक आपने अभी push न किया हो।
उदाहरण: Changing the Last Commit Message
git commit --amend -m "Fix typo in README"
भूली हुई Files Add करना
अगर आप commit करने से पहले एक file git add करना भूल गए, इसे अभी stage करें और इसे पिछली commit में fold करने के लिए git commit --amend --no-edit चलाएँ बजाय एक भूली हुई single file के लिए एक बिल्कुल नई बनाने के। यह आपकी history को ऐसे रखता है जैसे भूली हुई file हमेशा से वहाँ थी।
उदाहरण: Adding Forgotten Files
git add forgotten-file.txt
git commit --amend --no-edit
Author Information Amend करना
गलत name या email के तहत commit हो गया? git commit --amend --author="Name <email>" last commit पर सिर्फ author metadata rewrite करता है, तब उपयोगी जब किसी machine का default Git config उस identity से match न करे जिससे आप commit करना चाहते थे।
उदाहरण: Amending Author Information
git commit --amend --author="Priya Sharma <[email protected]>"
Push करने के बाद Amend करना
एक commit amend करना इसका hash बदल देता है, इसलिए अगर आपने पहले से original push की है, आपकी local और remote histories अब disagree करती हैं — एक plain git push reject हो जाएगा। remote branch को overwrite करने के लिए आपको git push --force-with-lease चाहिए, और जिस किसी और ने पुरानी commit पहले से pull की है उसे अपनी copy reconcile करनी होगी।
उदाहरण: Amending After Pushing
git commit --amend -m "Fix login bug"
git push --force-with-lease
एक Amend Commit Undo करना
गलत commit amend कर दी, या amend कर दी जब आप एक नई बनाना चाहते थे? reflog में amend से ठीक पहले वाली previous commit का hash अभी भी recorded है — इसे वहाँ ढूँढें और exactly जहाँ थे वहाँ वापस जाने के लिए git reset --hard <hash> चलाएँ।
उदाहरण: Undoing an Amend Commit
git reflog
git reset --hard a1b2c3d
- पहले से pushed एक commit amend करना और फिर एक rejected push पाना, क्योंकि history बदल गई और एक force push चाहिए होगा।
git commit --amend --no-editसे पहले file कोgit addकरना भूल जाना, ताकि amended commit में अभी भी वह न हो।- बिना message flag के
git commit --amendचलाना और बिना उम्मीद किए एक editor में drop हो जाना।
Chapter Quiz — Complete all 6 topics to unlock
0/6 topics done
Complete these topics first: