नई करता
git fetch
प्राप्त करने के लिए रीसेट
आप एक स्थानीय git reset
का उपयोग कर शाखा के लिए प्रतिबद्ध रीसेट कर सकते हैं।
एक स्थानीय शाखा के लिए प्रतिबद्ध बदलने के लिए:
git reset origin/master --hard
हालांकि सावधान रहो, प्रलेखन कहते हैं के रूप में:
पुनः निर्धारित करता है सूचकांक और काम कर पेड़। काम कर पेड़ में ट्रैक फ़ाइलों में कोई बदलाव के बाद से < प्रतिबद्ध> छोड़ दिए जाते हैं।
यदि आप वास्तव में स्थानीय रूप से जो भी परिवर्तन प्राप्त करना चाहते हैं - --soft
इसके बजाय रीसेट करें। जो शाखा के लिए प्रतिबद्ध इतिहास अपडेट करेगा, लेकिन कार्यशील निर्देशिका में किसी भी फाइल को नहीं बदलेगा (और फिर आप उन्हें प्रतिबद्ध कर सकते हैं)।
रिबेस
आप किसी भी दूसरे के शीर्ष पर अपने स्थानीय प्रतिबद्ध पुनः चलाने कर सकते हैं प्रतिबद्ध/शाखा git rebase
का उपयोग कर:
git rebase -i origin/master
इस इंटरैक्टिव मोड में rebase जहां आप प्रत्येक लागू करने के लिए चुन सकते हैं लागू करेगा व्यक्तिगत प्रतिबद्धता जो इतिहास में नहीं है, आप शीर्ष पर वापस आ रहे हैं।
(git push -f
के साथ) आप हटाया प्रतिबद्ध पहले से ही स्थानीय इतिहास में खींच लिया गया है, वे के रूप में करता है कि फिर से लागू कर दिया जाएगा सूचीबद्ध किया जाएगा - होगा की जरूरत है वे रिबेस के हिस्से के रूप में हटाए जाने के लिए या वे बस फिर हो जाएगा - शाखा के इतिहास में शामिल - और अगले धक्का पर रिमोट इतिहास में फिर से दिखाई दें।
उपयोग अधिक जानकारी और इसके बाद के संस्करण (या अन्य) आदेशों में से किसी पर उदाहरण के लिए मदद git command --help
।
वे पूरी शाखा को हटाने के बिना अपनी शाखा को हटा सकते हैं और फिर भी इसे बना सकते हैं: 'गिट चेकआउट मास्टर और गिट शाखा-डी परीक्षण और गिट चेकआउट -बी परीक्षण मूल/परीक्षण' – Florian
[संभावित गिट के लिए संभावित गलती खींचने पर स्थानीय फाइलों को ओवरराइट करें] (http://stackoverflow.com/questions/1125968/force-git-to-overwrite-local-files-on-pull) – gpoo