2011-10-19 10 views
8

मैंने पहले ही गिटूब पर नहीं, ईसी 2 पर अपने गिट सर्वर पर कुछ काम किया है।गिट: मैं सर्वर की प्रतिबद्धता को कैसे संशोधित कर सकता हूं?

मैं गिट सर्वर पर उन लोगों को कैसे संशोधित कर सकता हूं?

ऑपरेशन तरह निकालने के लिए प्रतिबद्ध, रिबेसिंग की तरह, परिवर्तन संदेश प्रतिबद्ध

क्या यह संभव है?

बहुत बहुत धन्यवाद।

उत्तर

9

आप मजबूर पुश के साथ बस सब कुछ कर सकते हैं। अपने स्थानीय पेड़ को वही चीज़ों में बदलें जो आप चाहते हैं और git push -f और यह आपके स्थानीय स्तर पर सर्वर पर पेड़ को प्रतिस्थापित करेगा। यह ध्यान देने योग्य है कि यह किसी अन्य प्रतिनिधि के साथ परेशानी का कारण बनता है जिसने पेड़ को खींच लिया है जिसे आपने अभी बदला है।

7

आप विध्वंस एक दूरस्थ शाखा के इतिहास संपादित करना चाहते हैं (उदाहरण के लिए rebase/amend), आपके बदलाव स्थानीय बनाना और फिर git push --force है। कभी-कभी यह काम नहीं करता है (भंडार प्रशासक इस सुविधा को अक्षम कर सकते हैं); उस स्थिति में, आप git push origin :my_branch के साथ रिमोट शाखा को हटाने का प्रयास कर सकते हैं और फिर इसे git push origin my_branch के साथ फिर से दबा सकते हैं। अन्यथा आप git revert का उपयोग कर सकते हैं, यदि आप किसी टीम में काम करते हैं तो अनुशंसित तरीका है (अंगूठे का नियम यह है कि प्रकाशित इतिहास को संशोधित नहीं किया जाना चाहिए)।

यहाँ एक उदाहरण (this Github repository का उपयोग) है:

$ touch SOMETHING 
$ emacs SOMETHING 
$ git add SOMETHING 
$ git ci -m SOMETHING 
[master d14aaa0] SOMETHING 
1 files changed, 1 insertions(+), 0 deletions(-) 
create mode 100644 SOMETHING 
$ git push 
Counting objects: 8, done. 
Compressing objects: 100% (5/5), done. 
Writing objects: 100% (6/6), 611 bytes, done. 
Total 6 (delta 3), reused 0 (delta 0) 
To [email protected]:23Skidoo/ghc-parmake.git 
    53f836a..d14aaa0 master -> master 
$ git reset --hard "HEAD~" 
HEAD is now at 7b2dc96 TODO update. 
$ git push --force 
Total 0 (delta 0), reused 0 (delta 0) 
To [email protected]:23Skidoo/ghc-parmake.git 
+ d14aaa0...7b2dc96 master -> master (forced update) 

commit history को देखते हुए, आप उस प्रतिबद्ध d14aaa0 अनुपस्थित है देख सकते हैं।

संबंधित मुद्दे

 संबंधित मुद्दे