मैं और मेरा दोस्त एक ही ब्रांच में काम कर रहे हैं। मैं परियोजना के अपने पक्ष में काम कर रहा था, प्रतिबद्ध और अद्यतन शाखा खींच लिया।

अद्यतन संस्करण संकलित नहीं हो रहा था, लेकिन मुझे अपनी तरफ से काम करना जारी रखना था, इसलिए मैंने परिवर्तनों को वापस कर दिया:

git revert -m 1 8fc8e4ddd2823e789b09af633115eae5f4997e5c 

मैंने काम करना जारी रखा, अपने बदलाव किए, और जब मैं इसे खींचने की कोशिश करता हूं तो कहता है Already up-to-date.

मुझे नहीं लगता कि मुझे कुछ भी रीसेट करने की ज़रूरत है, मैं उन सभी फाइलों को रखना चाहता हूं जिन पर मैंने काम किया है, और जीथब से नवीनतम शाखा प्राप्त करें।

git
0
Tom Bomb 6 अप्रैल 2020, 11:12

1 उत्तर

सबसे बढ़िया उत्तर

आपने git revert का इस्तेमाल किया, शायद आप git reset.


आपका इतिहास इस तरह दिखना चाहिए:

# from branch my/current/branch :
$ git log --oneline --graph
* eacf304  more of my work
* eacf302  some of my work
* eacf301  reverted faulty commit
* eacf300  my friend's version
* eacf299  last working version
...

eacf300 और eacf301 के बारे में "भूलने" के लिए अपनी स्थानीय शाखा के इतिहास को फिर से लिखने का एक तरीका यहां दिया गया है:

$ git rebase --onto eacf299 eacf301 my/current/branch

यह eacf299 के ऊपर eacf301 (शामिल नहीं) से शुरू होने वाले सभी कमिट को फिर से चलाएगा।

आपका इतिहास अब ऐसा दिखेगा:

$ git log --oneline --graph my/current/branch origin/my/current/branch
* eacf304  (my/current/branch) more of my work
* eacf302  some of my work
| * eacf300  (origin/my/current/branch) my friend's version
|/
* eacf299  last working version
...

आपका अगला git pull आपके मित्र के कार्य को आपकी शाखा में मिला देगा।

1
LeGEC 6 अप्रैल 2020, 09:36