আমার একটি সংগ্রহশালা ছিল যা এর উপর কিছু খারাপ কমিট ছিল (এই উদাহরণের জন্য ডি, ই এবং এফ)।
এবিসিডিইএফ মাস্টার এবং উত্স / মাস্টার
আমি স্থানীয় সংগ্রহস্থলটি বিশেষত একটি দ্বারা সংশোধন করেছি git reset --hard। আমি রিসেটের আগে একটি শাখা নিয়েছি তাই এখন আমার কাছে এমন একটি রেপো রয়েছে যা দেখে মনে হচ্ছে:
A-B-C master
\ D-E-F old_master
A-B-C-D-E-F origin/master
এখন আমার এই খারাপ কাজের কিছু অংশের দরকার ছিল তাই আমি চেরি আমার প্রয়োজনীয় বিটগুলি বেছে নিয়ে কিছু নতুন কমিট করেছিলাম তাই এখন আমার স্থানীয়ভাবে নিম্নলিখিতগুলি রয়েছে:
A-B-C-G-H master
\ D-E-F old_master
এখন আমি এই অবস্থাটি দূরবর্তী রেপোতে ঠেলাতে চাই। তবে, আমি যখন git pushবিনীতভাবে গিট করার চেষ্টা করি তখন আমাকে ব্রাশটি বন্ধ করে দেয়:
$ git push origin +master:master --force
Total 0 (delta 0), reused 0 (delta 0)
error: denying non-fast forward refs/heads/master (you should pull first)
To git@git.example.com:myrepo.git
! [remote rejected] master -> master (non-fast forward)
error: failed to push some refs to 'git@git.example.com:myrepo.git'
স্থানীয় রেপোর বর্তমান অবস্থা নিতে আমি কীভাবে দূরবর্তী রেপো পেতে পারি?
git push -forceসাবধানে আরো ।