গিট যখন কোনও ফাইল "আপডেট দরকার" বলে তখন এর অর্থ কী?


156

আমি আমার জীবনের জন্য "[ফাইল]: আপডেটের প্রয়োজন" বার্তাটির মাঝে মাঝে মাঝে মাঝে মাঝে ছিটকে যায় তার কোনও শালীন ব্যাখ্যা খুঁজে পাই না। এমনকি সরকারী গিট FAQ এটিকে একটি TODO হিসাবে চিহ্নিত করে ব্যাখ্যা করে। যদি কেউ এ কে ব্যাখ্যা করতে পারে) এর অর্থ কী; এবং খ) কীভাবে এটি ঠিক করা যায়, আমি অত্যন্ত কৃতজ্ঞ হব।


1
ভাল প্রশ্ন, যেমন আপনি বলেছিলেন এমনকি গিটফাকেরও কোনও উত্তর নেই: git.wiki.kernel.org/index.php/…
জাস্টিন

1
আপনি দেখতে পারেন stackoverflow.com/questions/5367734/...

1
আপনি কি বলতে পারবেন কোন আদেশটি এটি তৈরি করে? আর গিটের কোন সংস্করণ? আমি তাদের ইউআই থেকে অপসারণ করার চেষ্টা করেছি, তাই সাম্প্রতিক গিট আপনাকে যে জায়গাগুলি ভুলে গিয়েছে সেগুলি বাদ দিয়ে আপনাকে এটি বলা উচিত নয় ;-)।
ম্যাথিউ ময়

উত্তর:


108

এর অর্থ আপনি কোথাও থেকে পরিবর্তনগুলি মার্জ করার চেষ্টা করছেন তবে পরিবর্তনের মধ্যে এমন একটি ফাইলের পরিবর্তন রয়েছে যা নোংরা (বর্তমানে আপনার কার্যকরী গাছের মধ্যে সংশোধিত)। আপনাকে আপনার অসামান্য পরিবর্তন করতে হবে, বা সেগুলি স্ট্যাশ করতে হবে, আপডেট করার জন্য আপনি যা যা করছেন তা টানুন / পুনঃব্যবস্থা / মার্জ করুন / আনস্ট্যাশ করুন


4
এটি আসলে টান নয় - এটি একত্রীকরণ যা টানার অংশ। আপনি যদি একই সমস্যার সাথে একটি স্থানীয় শাখা মার্জ করার চেষ্টা করেন তবে আপনি একই ত্রুটিটি দেখতে পাবেন এবং আমি মনে করি যে অন্য মার্জ অপারেশনগুলি (প্রয়োগ করুন, স্ট্যাশ প্রয়োগ করুন ...) একইরকম ত্রুটি মুদ্রণ না করে print
ক্যাসাবেল

আহ, ধন্যবাদ যে আসলে জ্ঞান করে। আমার ধারণা, কোনও ভিন্ন শাখা চেকআউট করার আগে আমার অবশ্যই পরিবর্তনগুলি করা উচিত তা নিশ্চিত করা দরকার।
রোফরঙ্কেল

7
যদি এটি অনুসন্ধানের ফলাফলগুলিতে সহায়তা করে, আমি git svn rebaseএকটি নোংরা ওয়ার্কিং অনুলিপি দিয়ে এটি করার চেষ্টা করেও এই সমস্যাটি ছড়িয়েছি। স্ট্যাশ সেভ, রিবেস, স্ট্যাশ পপ এবং সমস্ত কিছু বিশ্বের সাথে ঠিক ছিল।
অ্যাডাম টટલ

1
ফাইলটি নিজেই পরিবর্তন করা যাবে না - এমনকি ফাইলের বৈশিষ্ট্যগুলি (অনুমতিগুলির মতো) পরিবর্তন করাও এর কারণ হতে পারে।
chiborg

22

অন্যরা যেমন উল্লেখ করেছে, আপডেট বার্তার দরকারের অর্থ ফাইলটি নোংরা বা অন্য কথায়, পুরানো। তবে পুনরায় সেট করার পরিবর্তে এবং আবার শুরু করার পরিবর্তে, কী করা যায় তা কেবলমাত্র git statusএবং তারপরে এটি git add <file> যদি পরিবর্তিত তালিকায় থাকে। কারণ আপনি ইতিমধ্যে ফাইলটি আগে যুক্ত করতে পারতেন, তবে তারপরে এটি পরিবর্তন করতে পারেন। এটি আমার সাথে ঘটেছিল এবং এই সরল সাহায্যে addআমি সমস্যার সমাধান করেছি।


7

আপনার প্রযোজনা / গন্তব্য সার্ভারে cdআপনার অ্যাপ্লিকেশন যুক্ত ডিরেক্টরিতে লগইন করুন এবং এই দুটি কমান্ড কার্যকর করুন।

1. সর্বশেষতম সংস্করণে পুনরায় সেট করুন

সতর্কতা, এটি আপনার সমস্ত পরিবর্তন মুছবে:

git reset --hard HEAD

2. পরিবর্তনগুলি টানুন

git pull origin master


1
[গিট রিসেট - হেয়ার হেড] আমার পক্ষে কাজ করেছে। আমি উইন্ডোজ শেয়ার ড্রাইভ থেকে প্রতিশ্রুতিবদ্ধ ছিলাম, তবে আমার উবুন্টু ডিরেক্টরিটি কেবলমাত্র যে প্রতিশ্রুতিবদ্ধ তা প্রতিফলিত করবে না যদিও এটি একই ফোল্ডার (জেড: ম্যাপযুক্ত / var / www / html /) was এটি চালানোর পরে, [গিট স্ট্যাটাস] এবং [গিট টান] উভয়ই এখন এটি আপ টু ডেট দেখাচ্ছে।
কিথ ডিসি

এটি আমার জন্যও কাজ করে এমন সমাধান। আমি উইন্ডোজে সোর্স ট্রি ব্যবহার করে গিট সাবট্রি ব্যবহার করার চেষ্টা করেছি এবং এটি প্রক্রিয়াতে খারাপভাবে দেখা দিয়েছে।
আর্টেম রাশাকোভস্কিই

3

লিঙ্কযুক্ত অন্যান্য প্রশ্নের উত্তর বলার মতো, বার্তাটির সহজ অর্থ হল আপনার অসামান্য পরিবর্তন রয়েছে। আপনি এটিও পেতে পারেন যেমন আপনি যদি কিছু পরিবর্তন নিয়ে মঞ্চস্থ হন git add, তবে আপনার মন পরিবর্তন করুন এবং git reset HEAD fileশুরু করার অভিপ্রায় নিয়ে করুন।


2
git reset HEAD fileএকই বার্তাটি উপস্থিত হওয়ার কারণ ঘটায়
বিশেষজ্ঞ

2

টার্গেট শাখায় নেই এমন ফাইলগুলিতে রিবেস প্রক্রিয়া অতিরিক্ত পরিবর্তন করার সময় এই ত্রুটি দেখা দিতে পারে ।

আমার জন্য জটিল অংশটি .gitattributesআমার রেপোতে ফাইল সহ ছিল । নতুন বাইনারি ফাইলের ধরণ অন্য একটি শাখায় যুক্ত করা হয়েছিল তবে এটি পরিচালনা করে পাঠ্য ফাইল হিসাবে বাধ্য করা হয়েছিল। গিট দ্বারা রেপো থেকে ফাইল ডাউনলোড করার সময়, ইওএলস (এটি আসলে বাইনারি মান বাইট) প্রতিস্থাপন করা হয়েছিল - ফলে বাইনারি পার্থক্য হয়।

বাইনারি হিসাবে নতুন ফাইল টাইপ হ্যান্ডেল করতে নতুন এন্ট্রি যুক্ত করা এবং আমার জন্য সম্পূর্ণ প্রক্রিয়া সমাধানের পুনরায় চেষ্টা করা।


1

আমার ক্ষেত্রে, আমি পেতে থাকি

assets/ElipseThree.png: needs update
You must edit all merge conflicts and then
mark them as resolved using git add

আমার ডিরেক্টরিতে এই ফাইলগুলি ছিল, তবে সেগুলি আমার বর্তমান শাখায় নতুন নামকরণ করা হয়েছিল। ঠিক করার জন্য, আমি দৌড়ে গেলাম

$ git mv assets/ElipseThree.png assets/elipseThree.png
$ git add assets/elipseHalfFull.png 
$ git rebase --continue

এবং এটি আমাকে চালিয়ে যেতে দেয়

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