দুটি ভিন্ন ফাইলের মধ্যে গিট পার্থক্য


108

ইন HEAD(সর্বশেষ কমিট), আমি নামের একটি ফাইল আছে foo। আমার বর্তমান কার্যক্ষম গাছটিতে, আমি এটির নামকরণ করেছি barএবং এটি সম্পাদনাও করেছি।

আমি চাই git diff fooমধ্যে HEAD, এবং barআমার বর্তমান কাজের গাছে।


64
আমি ভেবেছিলাম এই প্রশ্নটি (শিরোনাম থেকে) এমন দুটি ফাইলের মধ্যে গিট ডিফ ব্যবহার করতে পারে যা অগত্যা কোনও রেপোতে নেই। আমি দেখতে পেলাম যে git diff --no-index --word-diff old_file.txt new_file.txt--no- সূচি পতাকাটি তার জন্য, যেমন (- ওয়ার্ড-ডিফ বিভিন্ন শব্দ দ্বারা পরিবর্তনগুলি হাইলাইট করে, কেবল লাইন নয়, যা দীর্ঘ পাঠ্যের জন্য অত্যন্ত সহায়ক)।
প্যাট

উত্তর:


134

স্পষ্টভাবে পাথ নির্দিষ্ট করুন:

git diff HEAD:full/path/to/foo full/path/to/bar

পরীক্ষা করে দেখুন --find-renamesবিকল্প git-diff ডক্স

ক্রেডিট: twaggs


8
আমি উল্লেখ করতে চাই, যে আপনি কোনও দুটি ফাইলের git diff <path> <path>গিটারের ভাণ্ডারে না থাকলেও ব্যবহার করে তুলনা করতে পারেন।
মিটেনকা

1
@ মিমেনকা আমি এটিকে সঠিক মনে করি না। আপনি যদি তাকান তবে git diff --helpদেখবেন যে দুটি ফাইলের জন্য সমর্থিত একমাত্র নিদর্শনগুলি git diff [<options>] --no-index [--] <path> <path>git diff a bফাইলগুলি নয়, কেবল প্রতিশ্রুতিবদ্ধ নিদর্শনগুলির সাথে মেলে।
ডগ

@ ডউগ এখানে আপনার উল্লেখ করা সহায়তা আদেশের উদ্ধৃতি, git-scm.com/docs/git-diff : ডিস্কে দুটি ফাইলের মধ্যে পরিবর্তনগুলি [...] দেখান।
মিতেনকা

@ মিনেঙ্কা সাহায্য বলেছে, আপনি '--no-index' ব্যবহার না করলে এটি ফাইলের তুলনা করে না; আপনার মন্তব্য পৃথক উত্তর হওয়া উচিত; এটি সত্য নয় এবং এটি এই উত্তরের সাথে প্রাসঙ্গিক নয়।
ডগ

@ ডউগ আপনার মতামতের জন্য আপনাকে ধন্যবাদ আপনাকে উল্লেখ করা সহায়তার উদ্ধৃতিটি এখানে রইল: --no-indexগিট দ্বারা নিয়ন্ত্রিত একটি কার্যত বৃক্ষে কমান্ড চালাবার সময় এবং কার্যকরী গাছের বাইরে কমপক্ষে একটি পয়েন্ট পয়েন্ট করার সময়, বা গিট দ্বারা নিয়ন্ত্রিত একটি কার্যক্ষম গাছের বাইরে কমান্ড চালানোর সময় আপনি বিকল্পটি বাদ দিতে পারেন You ।
মিটেনকা

77

আমি বিশ্বাস করি --no-indexআপনি যা খুঁজছেন তা ব্যবহার করা:

git diff [<options>] --no-index [--] <path> <path>

যেমন গিট ম্যানুয়ালটিতে উল্লেখ করা হয়েছে:

এই ফর্মটি ফাইল সিস্টেমে প্রদত্ত দুটি পাথের তুলনা করা। গিট দ্বারা নিয়ন্ত্রিত একটি কার্যত বৃক্ষে কমান্ড চালানোর সময় এবং কার্যত গাছের বাইরে কমপক্ষে একটি পথ নির্দেশ করে বা গিট দ্বারা নিয়ন্ত্রিত একটি কার্যক্ষম গাছের বাইরে কমান্ড চালানোর সময় আপনি বিকল্পটি বাদ দিতে পারেন ।--no-index


1
@ স্পষ্টতই এটি একটি কার্যকর উত্তর, তবে ওপি স্পষ্টভাবে জানিয়েছে যে ফাইলটি হেডে রয়েছে, যার অর্থ এটি গিট সূচকে রয়েছে। গৃহীত উত্তর সরাসরি প্রশ্নের সমাধান করে। এছাড়াও গৃহীত উত্তরের 6 বছরের মাথায় শুরু হয়েছিল;)
মাইকেল দেলগাদো

3
এটি ওপিকে সাহায্য নাও করতে পারে তবে আমি যা খুঁজছিলাম ঠিক এটি ছিল।
thislooksfun

এটি ওয়েবে আপনি যদি ডকিং করছিলেন তবে এটি শিরোনাম দ্বারা পোস্ট করা প্রশ্নের উত্তর দেয়।
মার্লিন

3

আপনি যদি কচ্ছপের গিট ব্যবহার করছেন তবে আপনি কোনও ফাইলটিতে ডান ক্লিক করতে পারেন এবং এর মাধ্যমে একটি ডিফিট গিট করতে পারেন: প্রথম ফাইলটিতে ডান ক্লিক করে এবং কচ্ছপ সাবমেনুটির মাধ্যমে "পরে ডিফ করুন" নির্বাচন করুন এবং তারপরে দ্বিতীয় ফাইলটিতে আপনি ডান ক্লিক করতে পারেন , কচ্ছপ সাবমেনুতে যান এবং তারপরে "আপনার ফাইলের সাথে আলাদা করুন। txt" নির্বাচন করুন


-12

পিএইচপিস্টোরম ব্যবহার করে, আমি কেবল পূর্ব কমিট কোডটি অনুলিপি করি এবং "ক্লিপবোর্ডের সাথে তুলনা করি" সরঞ্জামটি অন্তর্নির্মিত ব্যবহার করে বর্তমান সংস্করণের সাথে তুলনা করি।


5
পিএইচপিস্টোরম একটি বাণিজ্যিক আইডিই। এই প্রশ্নটি গিট ক্লিমে নিজেই কীভাবে এটি করা যায় সে সম্পর্কে অতিরিক্ত সফ্টওয়্যার অনুমান করার উপায় নেই।
চার্লস টেলর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.