গিথুব "আপডেটগুলি প্রত্যাখ্যান করা হয়েছে কারণ রিমোটে এমন কাজ রয়েছে যা আপনার কাছে নেই"


176

আমি একটি নতুন রেপো তৈরি করেছি, এটি ক্লোন করেছি, ডিরেক্টরিগুলিতে ফাইল যুক্ত করেছি, সেগুলি যুক্ত করেছি add -A, প্রতিশ্রুতিবদ্ধ পরিবর্তনগুলি করেছি এবং যখন আমি ব্যবহার করে ধাক্কা দেওয়ার চেষ্টা করি তখন git push <repo name> master"আপডেটগুলি প্রত্যাখ্যান করা হয়েছিল কারণ রিমোটে এমন কাজ রয়েছে যা আপনার নেই"।

এটি কোনও নতুন রেপো এবং এটিতে কেবল একটি রিডমি ফাইল রয়েছে বলে এটি বোধগম্য বলে মনে হচ্ছে না।

উত্তর:


308

আপনি READMEএবং / অথবা LICENSEফাইল সহ কোনও নতুন গিথুব রেপো সূচনা করলে এটি ঘটে

git remote add origin [//your github url]

//pull those changes

git pull origin master 

// or optionally, 'git pull origin master --allow-unrelated-histories' if you have initialized repo in github and also committed locally

//now, push your work to your new repo

git push origin master

এখন আপনি আপনার সংগ্রহশালাটি গিথুবে ঠেলাতে সক্ষম হবেন। মূলত, আপনাকে সেই নতুন নতুন ফাইলগুলিকে আপনার কাজের সাথে একত্রী করতে হবে। git pullআপনার জন্য আনা এবং একত্রিত করা। আপনি এটি আনতে এবং একত্রে করতে পারেন যদি এটি আপনার উপযুক্ত হয়।


7
আমি আরও বিশদ ব্যাখ্যার সাথে একটি ইউটিউব ভিডিও তৈরি করেছি এবং প্রথমে এই সমস্যাটি এড়াতে দুটি উপায় প্রস্তাবিত।
কেভিন

16
মার্জ কমান্ডের জন্য আমার ব্যবহার দরকারgit pull origin master --allow-unrelated-histories
লুসিয়ানো মারকোয়েটো

আমি "মারাত্মক: সম্পর্কিত সম্পর্কহীন ইতিহাসগুলিকে একীভূত করতে অস্বীকৃতি" পেয়েছি
সের্গি

4
@ সের্গি চেষ্টা করুনgit pull origin master --allow-unrelated-histories
প্যালেডটট

101

আপনি যে কোডটি করছেন তা বিভিন্ন কাঠামোর কারণে এবং গিটহাবের উপস্থিত থাকাতে সম্ভবত ত্রুটিটি এসেছে। এটি দ্বন্দ্ব তৈরি করে যা সমাধান করা যায়

git pull

সংঘাতগুলি সমাধানে মার্জ করুন:

git push

আপনি যদি নিশ্চিত হন যে আপনার নতুন কোডটি সমস্ত সূক্ষ্ম আপনি ব্যবহার করতে পারেন:

git push -f origin master

যেখানে -f"ফোর্স কমিট" বলতে বোঝায়।


13
'গিট পুশ-ফ উত্সের মাস্টার' - এটি সহায়তা করে
সৌরভ

4
গিট পুশ -f আপনার স্থানীয় ইতিহাসের সাথে দূরবর্তী ইতিহাসকে ওভাররাইট করে, এটি ব্যবহার করার সময় সতর্কতা অবলম্বন করুন। বিশেষত পাবলিক ভান্ডারগুলিতে।
আন্দ্রে

updates-were-rejectedআপনি যদি রিমোটে গিথুব রেপোতে পরিবর্তন করেন তবে উদাহরণস্বরূপ: গিথুব গুই ব্যবহার করে রিডমি ফাইলটিতে কিছু পরিবর্তন করা হয়েছে। এবং তারপরে আপনার নতুন কাজটি গিথুবের দিকে ঠেলে দেওয়ার চেষ্টা করেছে, এটি এই বার্তাটি দেখিয়ে দেবে যে আপনি দূরবর্তী অঞ্চলে যে পরিবর্তনগুলি করেছেন তবে এটি স্থানীয়ভাবে উপস্থিত নেই।
ডেক

13

এটি যদি আপনার প্রথম ধাক্কা হয়

শুধু পরিবর্তন

git push <repo name> master

এভাবে বদলাও!

git push -f <repo name> master

1
এটি প্রাথমিকভাবে উত্স তৈরি করার মতো ফাইলগুলি বাতিল করে দেয়। বরং git pullরিমোট ফাইলগুলি পেতে আগে ব্যবহার করুন এবং আপনার প্রতিশ্রুতি মার্জ করুন। গৃহীত উত্তরের মতো ঠিক আছে
জয়জয়

@jayjaybrickoft আপনার মন্তব্যের জন্য আপনাকে ধন্যবাদ। এটি প্রথম ধাক্কা, সুতরাং মূল ফাইলগুলি প্রতিস্থাপন করা ঠিক আছে।
মাহায়ার


2

সরবরাহ করা উত্তরগুলি আমার পক্ষে কার্যকর হয়নি।

আমার কাছে গিটহাবের একটি খালি রেপো ছিল কেবলমাত্র লাইসেন্সের ফাইল এবং স্থানীয়ভাবে একটি একক প্রতিশ্রুতি দিয়ে। কি কাজ ছিল:

$ git fetch
$ git merge --allow-unrelated-histories
Merge made by the 'recursive' strategy.
 LICENSE | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 LICENSE

এছাড়াও mergeআপনি চান আগে :

$ git branch --set-upstream-to origin/master
Branch 'master' set up to track remote branch 'master' from 'origin'.

0

আমি এই পদক্ষেপগুলি অনুসরণ করেছি:

মাস্টার টানুন:

git pull origin master

এটি আপনার স্থানীয় রেপো গিথুব রেপোর সাথে সিঙ্ক করবে। আপনার নতুন ফাইল যুক্ত করুন এবং তারপরে:

git add .

পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ:

git commit -m "adding new file  Xyz"

অবশেষে, উত্সের মাস্টারটিকে চাপ দিন:

git push origin master

আপনার গিথুব রেপো রিফ্রেশ করুন, আপনি নতুন যুক্ত হওয়া ফাইলগুলি দেখতে পাবেন।


0

আপনি যদি ভিজুয়াল এস ২০১৯ ব্যবহার করছেন তবে নিম্নলিখিত হিসাবে দেখানো হয়েছে এমন একটি নতুন স্থানীয় শাখা তৈরি করুন এবং তারপরে পরিবর্তনগুলি রেপোতে চাপুন ভিএস2019 স্থানীয় শাখা

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.