মার্জ কমিটগুলিতে লুকানো পরিবর্তনের জন্য
মার্জ কমিটসগুলিতে গিট লগ আউটপুট থেকে স্বয়ংক্রিয়ভাবে তাদের পরিবর্তনগুলি লুকানো থাকে। পিকেক্স এবং বিপরীত-দোষ উভয়ই এই পরিবর্তনটি খুঁজে পায়নি। সুতরাং আমি যে লাইনটি চেয়েছিলাম তা যুক্ত করা হয়েছিল এবং পরে অপসারণ করা হয়েছিল এবং আমি মার্জটি খুঁজে পেতে চেয়েছিলাম যা এটি মুছে ফেলে। ফাইল git log -p -- path/fileইতিহাস কেবল এটি যুক্ত করা দেখিয়েছে। এটি সন্ধান করার জন্য এখানে আমি সবচেয়ে ভাল উপায় খুঁজে পেয়েছি:
git log -p -U9999 -- path/file
পরিবর্তনের জন্য অনুসন্ধান করুন, তারপরে "^ কমিট" এর জন্য পিছনের দিকে অনুসন্ধান করুন - প্রথম "^ কমিট" ফাইলটি সর্বশেষ যে লাইনটি রেখেছে সেখানে প্রতিশ্রুতিবদ্ধ। দ্বিতীয় "^ কমিট" এটি অদৃশ্য হওয়ার পরে। দ্বিতীয় প্রতিশ্রুতিবদ্ধতা এটি হতে পারে যে এটি হতে পারে। -U9999অভিমানী আপনার ফাইল সব সর্বোচ্চ 9999 লাইন আছে সম্পূর্ণ ফাইল বিষয়বস্তু (প্রতিটি সময় ফাইল পরিবর্তন করা হয়েছে পরে) দেখানোর জন্য বোঝানো হয়।
ব্রুট ফোর্সের মাধ্যমে সম্পর্কিত কোনও সংযুক্তি খুঁজে বের করে (প্রতিটি সম্ভাব্য মার্জ তার প্রথম পিতামাতার সাথে প্রতিশ্রুতি দেয়, অনেকগুলি কমিটের বিপরীতে চালিত হয়)
git log --merges --pretty=format:"git diff %h^...%h | grep target_text" HEAD ^$(git merge-base A B) | sh -v 2>&1 | less
(আমি পুনর্বিবেচনা ফিল্টারটি আরও সীমাবদ্ধ করার চেষ্টা করেছি, তবে আমি সমস্যার মধ্যে পড়েছিলাম এবং এটির প্রস্তাব দিই না I আমি যে অ্যাড / অপসারণের পরিবর্তনগুলি সন্ধান করছিলাম তা বিভিন্ন শাখায় ছিল যা বিভিন্ন সময়ে মিশে গিয়েছিল এবং এ ... বি অন্তর্ভুক্ত হয়নি) পরিবর্তনগুলি আসলে মূল লাইনে মিশে গেলে))
এই দুটি কমিট (এবং জটিল গিট ইতিহাস অনেকগুলি মুছে ফেলা) সহ একটি গিট ট্রি দেখান :
git log --graph --oneline A B ^$(git merge-base A B)
(ক উপরোক্ত প্রথম প্রতিশ্রুতি, বি উপরের দ্বিতীয় প্রতিশ্রুতি)
এ এর ইতিহাস এবং এ এবং বি উভয়ের বি বিয়োগের ইতিহাস দেখান
বিকল্প সংস্করণ (নিয়মিত গিট ইতিহাস গাছের চেয়ে পথটি আরও রৈখিকভাবে দেখায় বলে মনে হচ্ছে - তবে আমি নিয়মিত গিট ইতিহাস গাছ পছন্দ করি):
git log --graph --oneline A...B
তিনটি, দুটি বিন্দু নয় - তিনটি বিন্দুর অর্থ "আর 1 আর 2 - নন্ট $ (গিট একীভূত বেস - সমস্ত আর 1 আর 2) It পাশ), তবে উভয় থেকে নয় " - উত্স: "মানুষ gitrevisions"
git log -S<string> /path/to/file-c-cc