গিথুবে নতুন কোড চাপানো ইস্যু


147

আমি গিথুবে একটি নতুন সংগ্রহশালা তৈরি করেছি যার এখন কেবলমাত্র Readme.md ফাইল রয়েছে।

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

git remote add origin https://github.com/aniruddhabarapatre/learn-rails.git

যার পরে আমি আমার ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রবেশ করলাম

git push -u origin master

ত্রুটি ---

To https://github.com/aniruddhabarapatre/learn-rails.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/aniruddhabarapatre/learn-rails.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

এই প্রথম আমার কোডটি একটি গিথুব সংগ্রহস্থলে চাপছে এবং আমি ত্রুটিগুলি দিয়ে হারিয়েছি। আমি এখানে আরও কয়েকটি প্রশ্ন জিজ্ঞাসা করেছি, তবে তাদের কোনওটিরই প্রথমবারের মতো সমস্যা হয়নি।


উত্তর:


167

আপনি যখন গিটহাবে আপনার সংগ্রহশালা তৈরি করেছেন , আপনি একটি README.md তৈরি করেছেন , এটি একটি নতুন প্রতিশ্রুতি

আপনার স্থানীয় ভান্ডারগুলি এই প্রতিশ্রুতি সম্পর্কে এখনও জানে না। অত: পর:

আপডেটগুলি প্রত্যাখ্যান করা হয়েছিল কারণ দূরবর্তীটিতে এমন কাজ রয়েছে যা আপনার স্থানীয়ভাবে নেই।

আপনি এই পরামর্শটি অনুসরণ করতে চাইতে পারেন:

আপনি git pullআবার চাপ দেওয়ার আগে প্রথমে দূরবর্তী পরিবর্তনগুলি (যেমন, ' ') মার্জ করতে চাইতে পারেন ।

এটাই:

git pull
# Fix any merge conflicts, if you have a `README.md` locally
git push -u origin master

3
আমি যা করছি তা হচ্ছে প্রথমে গিট পুল অরিজিন মাস্টার এবং আবার চাপ দিন push
বাগসফ্লিয়ার

12
কিছু ক্ষেত্রে আপনি এরকম ক্ষেত্রে একটি পেতে পারেন fatal: refusing to merge unrelated histories, আপনি জমা দিন git pull --allow-unrelated-histories origin masterএবং তারপরে আপনি উপরের উত্তর অনুযায়ী চাপ দিন
TheLebDev

1
আমার জন্য কাজ করে না। রিমোট: পুশ প্রত্যাখ্যাত। রিমোট: রিমোট: রেফ / হেড / মাস্টার: ...: প্রত্যাশিত প্রতিশ্রুতিবদ্ধ নাম xxx তবে পাওয়া গেছে yyy y আমি একটি গিট কনফিগারেশন করি - গ্লোবাল ইউজার.ইমেল ইয়ে এবং এটি এখনও স্বীকৃত নয়। কিছুতেই জোর করা যায় না। !!!
বারুচ আত্তা

284

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

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

git push **-u** origin master

এভাবে বদলাও!

git push -f origin master

5
এটি আমার রিডমি ফাইলটিকে মুছে ফেলেছে যা আমি প্রথমে গিথুব এ রেখেছি। এখন দেখে মনে হচ্ছে আমাকে আবার এটি করতে হবে।
জ্যাক ফাঁকা

3
আপনি কেবলমাত্র একটি সতর্কতা যুক্ত করতে পারেন যা
চাপটি চাপিয়ে দেয়

এটি একটি খারাপ উপায়, এটি আমার একটি সমস্যা সৃষ্টি করেছে, এটি আমার দ্বারা তৈরি হয়নি এমন রিডমিকে মুছে ফেলেছে, এখন আমাকে রক্ষণাবেক্ষণকারীকে কল করতে হবে যে আমি বোকা, দুঃখিত আমাকে আবার তৈরি করুন। :(
মোহাম্মদ এলসায়িদ

62

AS সহজ: আপনার যা দরকার তা হ'ল জোর করে ধাক্কা। কারণ আপনি readme.mdগিথুবে ফাইল তৈরি করেছেন এবং আপনি এখনও এটি টানতে পারেন নি।

git push -f origin master

এবং এখানে একটি জিআইএফ আছে।

গিট ধাক্কা - উত্স মাস্টার

⚠️ সাবধান থাকুন : ব্যবহার forceএকই প্রকল্পে অন্যান্য লোকেরা ইতিহাস পরিবর্তন করতে পারেন। মূলত, আপনি যদি কারও জন্য ফাইল মুছে ফেলার বিষয়ে চিন্তা না করেন তবে এগিয়ে যান। বিশেষত যদি আপনি প্রকল্পের একমাত্র দেব হন।


1
নোট করুন যে এই পদ্ধতির ইতিহাস বদলেছে যে এই সংগ্রহস্থলের অন্যান্য ব্যবহারকারীরা ইতিমধ্যে নিয়ে এসেছেন। git push -f origin masterগঠনের একটি দুর্দান্ত অভ্যাস নয়।
জনসিওয়েব

1
এই সমাধানটি চাপ প্রয়োগের সমাধান করতে পারে তবে এটি অতীতের সমস্ত কমিটগুলি সরিয়ে দেয়!
twenk11k

2
গিথুব নুবস থেকে সাবধান থাকুন ... আপনি যদি গিটহাবের মাধ্যমে একটি Readme.md তৈরি করে থাকেন তবে এই কমান্ডটি আপনার নতুন পরিবর্তনগুলিকে ধাক্কা দেওয়ার সাথে সাথে এটি সরিয়ে ফেলবে।
daCoda

এ কারণেই মানুষ এখানে অবতরণ করে। -fট্যাগ ফাইলগুলি সরায় এবং যত্ন সহ ব্যবহার করা উচিত।
আহমদ আওইস


8

ধরে নিই যে আপনি গিথুব দ্বারা সরবরাহ করা ইন্টারফেসের মাধ্যমে Readme.md ফাইলটি যুক্ত করেছেন, রিডমিটি এখনও আপনার স্থানীয় ফোল্ডারে নেই। অতএব, আপনি যখন রিমোট রেপোতে চাপ দেওয়ার চেষ্টা করবেন, আপনি একটি ত্রুটি পেয়েছেন, কারণ আপনার স্থানীয় রেপোতে রিডমি ফাইলের অভাব রয়েছে - এটি "সময়ের পিছনে", তাই কথা বলতে। সুতরাং, ত্রুটি বার্তায় যেমন পরামর্শ দেওয়া হয়েছে, প্রথমে "গিট টান" চেষ্টা করুন। এটি রিমোটটি রিমোট রিপোজিটরি থেকে টানবে এবং এটিকে আপনার স্থানীয় ডিরেক্টরিতে একীভূত করবে। এর পরে, আপনার রিমোট রেপোতে চাপ দেওয়া কোনও সমস্যা হবে না (আপনি যে আদেশগুলি পোস্ট করেছেন তা আমার কাছে বৈধ বলে মনে হচ্ছে)।


6

আপনি যখন প্রাথমিকভাবে ধাক্কা দেওয়ার চেষ্টা করবেন তখনই এটি ঘটে B কারণ আপনার গিটহাবের রেপোতে ReadMe.md বা অন্য কোনও নতুন জিনিস যা আপনার স্থানীয় রেপোতে নেই। প্রথমে আপনাকে আপনার গিথাব রেপোর সম্পর্কিত সম্পর্কহীন ইতিহাসটি মার্জ করতে হবে o এটি করতে

git pull origin master --allow-unrelated-histories

তারপরে আপনি এটি ব্যবহার করে রেপো থেকে অন্য ফাইলগুলি (readMe.md বা অন্য কোনও) পেতে পারেন

git pull origin master

তারপর

git push -u origin master

এখন আপনি আপনার সমস্ত পরিবর্তন সাফল্যের সাথে গিথুব রেপোতে ঠেলে দিয়েছেন I আমি গিটে বিশেষজ্ঞ নই তবে প্রতিবার এই পদক্ষেপগুলি আমার পক্ষে কাজ করে।


5

আপনি যদি কিছু সময়ের মধ্যে আপনার পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ না হন তা বিবেচনা করে, সম্ভবত এটি করা আপনার পক্ষে কার্যকর হবে।

git add files
git commit -m "Your Commit"
git push -u origin master

এটি আমার পক্ষে কাজ করেছিল, আশা করি এটি আপনার পক্ষেও হয়েছে।


3

আপনি যদি জিইউআই-তে ম্যাকের জন্য গিট ব্যবহার করেন তবে আপনি প্রথমে রেসপোজিটরি-> পুল বা "কম + শিফট + পি" চয়ন করতে পারেন প্রথমে "গিট টান", তারপরে উত্সটি প্রকাশ করুন।


3

এই ত্রুটিটি ঘটে যখন আপনি গিট কমান্ডটি অনুসরণ করে আপনার স্থানীয় ডিরেক্টরি থেকে ডেটাটি আপনার দূরবর্তী গিট সংগ্রহস্থলের দিকে ঠেলে দেন: git push -u origin master

স্থানীয় ডিরেক্টরি এবং গিট দূরবর্তী ডিরেক্টরিগুলির ফাইলগুলি বিরোধী হিসাবে।

সমাধান:

সমস্ত ফাইল প্রতিশ্রুতিবদ্ধ করার পরে নীচের পদক্ষেপগুলি অনুসরণ করুন।

  1. স্থানীয় ওয়ার্কিং ডিরেক্টরিের সাথে দ্বন্দ্ব হিসাবে দূরবর্তী সংগ্রহস্থল থেকে ফাইলগুলি আনুন।

    • git pull <remoter-url> <branch-name>
  2. আবার পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ।

    • git add -A
    • git commit -m ‘<comment>'
  3. উভয় ডিরেক্টরিতে প্রতিশ্রুতিবদ্ধ মার্জ ফাইলগুলির পরে আপনি ব্যবহার করতে পারেন

    • git push -u origin master

এটি সমস্যার সমাধান করবে। ধন্যবাদ।


1

আমারও অনুরূপ সমস্যা ছিল ... আমি এটি এর মতো সমাধান করেছি (আমি গিট বিশেষজ্ঞ নই তাই এটি সঠিক সমাধান কিনা তা আমি জানি না, তবে এটি আমার পক্ষে কার্যকর হয়েছিল):

git pull origin master --allow-unrelated-histories
git merge origin origin/master
git rm README.md
git commit -m 'removed readme.md'
git push origin master

0

আমি এই ত্রুটির সাথে এক ঘন্টােরও বেশি সময় ধরে সংগ্রাম করেছি! নীচে আমাকে এটি সমাধান করতে সহায়তা করেছে। এই সমস্ত কাজ করার সময় আমার ওয়ার্কিং ডিরেক্টরিটি আমার সিস্টেমে ক্লোন করা রেপো ছিল।

আপনি যদি আপনার বিদ্যমান সংগ্রহস্থলগুলিতে ফাইলগুলি যুক্ত করছেন ** ১। আমি আমার গিটিহাব ফোল্ডারে আমার ভান্ডারটিতে যা কিছু যুক্ত করেছিলাম তা টেনে নিয়েছি:

গিট টান


আউটপুটটি ছিল - কিছু রিডমে ফাইল ফাইল 1 ফাইল 2

  1. আমি আমার ক্লোন করা সংগ্রহস্থল (গিটহাব রেপো) এ আমার নতুন ফাইলগুলি (যে ফাইলগুলিকে আমি চাপতে চাইছিলাম) অনুলিপি (টেনে আনুন এবং ফেলে রেখেছি)। আপনি যখন এই রেপোটি প্রকাশ করবেন আপনার নিজের পুরানো এবং নতুন ফাইলগুলি দেখতে হবে।

যেমন। কিছু রিডমে ফাইল ফাইল 1 ফাইল 2 নতুন ফাইল 1 নতুন ফাইল 2

  1. গিট যোগ করুন "newfile1" "newfile2"

  2. [alচ্ছিক] গিট স্ট্যাটাসটি আপনাকে আশ্বাস দেবে যে আপনি যে ফাইলগুলি যুক্ত করতে চান তা সঠিকভাবে মঞ্চস্থ হয় বা আউটপুট না থাকলে


শাখা মাস্টারে আপনার শাখা 'উত্স / মাস্টার' দিয়ে আপ-টু-ডেট। প্রতিশ্রুতিবদ্ধ হতে পরিবর্তনগুলি: (স্টেঞ্জার জন্য "গিট রিসেট হেড ..." ব্যবহার করুন)

    new file:   newfile1
    new file:   newfile2

5.git কমিট - মি "আপনি যে বর্ণনা দিতে চান তা" 6. গিট পুশ

এবং পুরানো ফাইলগুলির সাথে আমার সমস্ত নতুন ফাইলগুলি আমার রেপোতে দেখা গেছে।


0

একটি সহজ উত্তর হ'ল ম্যানুয়ালি আপনার কম্পিউটার থেকে README.MD ফাইলটি গিটহাবে আপলোড করা। আমার জন্য খুব ভাল কাজ করেছেন।


0

আমি শাখাগুলি বিকল্পগুলি ব্যবহার করি এবং তারপরে "দূরবর্তী / উত্স" ফোল্ডারে ডান ক্লিক করুন এবং তারপরে "দূরবর্তী থেকে শাখাগুলি মুছুন" এ ক্লিক করুন, নীচের চিত্রটি দেখুন:

চিত্র


0

আমি আজুর গিতে এই ত্রুটি পেয়েছি এবং এটি সমস্যার সমাধান করে:

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