হোয়াইটস্পেস বিবাদ ছাড়াই মার্জ করা


179

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

এই প্রকল্পের জন্য প্রায় 50 টি অনুরোধ রয়েছে, যা আমার প্রতিশ্রুতি একীভূত হওয়ার পরে সমস্ত বিবাদ থাকবে। গিটটি এমন কোনও উপায়ে সেট আপ করা যেতে পারে যাতে ভবিষ্যতে প্রতিশ্রুতি যুক্ত হওয়ার সময় এটি দ্বন্দ্বগুলি উপেক্ষা করে যেখানে তাদের মধ্যে একটি কেবল একটি সাদা স্থান পরিবর্তন?

গিট নিজেই সংশোধন করা বা তৃতীয় পক্ষের সরঞ্জাম ব্যবহার করা সম্ভব নয় তবে হুক ব্যবহার করা ভাল fine


উত্তর:


245
 git merge -Xignore-all-space

বা (আরও সুনির্দিষ্ট)

 git merge -Xignore-space-change

মার্জ করার সময় সমস্ত স্থান সম্পর্কিত দ্বন্দ্ব উপেক্ষা করার জন্য যথেষ্ট হওয়া উচিত।

গিট ডিফ দেখুন :

--ignore-space-change

সাদা স্থানের পরিমাণের পরিবর্তন উপেক্ষা করুন।
এটি লাইন প্রান্তে সাদা স্থানকে উপেক্ষা করে এবং এক বা একাধিক সাদা বর্ণের অক্ষরের অন্যান্য সমস্ত ক্রমকে সমতুল্য বলে বিবেচনা করে।

--ignore-all-space

লাইনগুলির তুলনা করার সময় হোয়াইটস্পেস উপেক্ষা করুন।
এটির পার্থক্য উপেক্ষা করে এমনকি একটি লাইনের শ্বেত স্পেস যেখানে অন্য লাইনের কোনওটি নেই।

ks1322 মন্তব্যগুলিতে একটি ভাল পরামর্শ যুক্ত করুন:

এটি --no-commitসত্যিকারের প্রতিশ্রুতি দেওয়ার আগে একত্রিত হওয়া এবং মার্জটি পর্যালোচনা করা ভাল


ওপি ক্যালাম MacRae রিপোর্ট করছে যে, সেই ক্ষেত্রে, একত্রীকরণ নিরবচ্ছিন্ন হেঁটেছে | টান অনুরোধ প্যাচ অন্তর্ভুক্ত trailing স্পেস স্থানীয় ফাইলগুলিতে প্রয়োগ করা হয়েছে।
তবে, ওপিতে একটি প্রাক-কমিট হুক ব্যবহার করা হয়েছে যা ট্রেলিং স্পেসগুলির যত্ন নেবে।
(আমি একটু অনুরূপ অনুমান করা এই এক , এছাড়াও এখানে উল্লিখিত )।


ওপি'র প্রাক কমিট হুক এখানে উল্লেখ করা হয়েছে :

পেছনের শ্বেতক্ষেত্রটি অপসারণের পাশাপাশি এটি ট্যাবগুলির আগে এক থেকে তিনটি স্পেস সরিয়ে দেয় (আমার ট্যাব প্রস্থটি 4 এ সেট করা আছে) এবং EOL গুলি যুক্ত করে adds
আমার কাছে প্রতিবেদন ছিল যে EOL যুক্ত করা কোডটি উইন্ডোতে ফাইলটি মুছে ফেলে, তবে এটির পুনরায় তৈরি করতে সক্ষম হয় নি।


1
আমার পরীক্ষা থেকে এখন পর্যন্ত দেখে মনে হচ্ছে এটি ফাইলের সমস্ত সাদা স্থান পরিবর্তন করে changes যাইহোক, আমি এখন প্রাক-কমিট হুকটি টেলিং হোয়াইটস্পেস সরানোর জন্য ব্যবহার করছি যাতে এটি কোনও সমস্যা নয়।
কলমানক্রয়ে

1
@ কলমম্যাক্রয়ে: ঠিক আছে, এবং প্রতিক্রিয়ার জন্য আপনাকে ধন্যবাদ। আবার, আমি আরও দৃশ্যমানতার জন্য উত্তরে আপনার লিঙ্কটি যুক্ত করেছি।
ভনসি

1
git merge -Xignore-space-change- ভাল, আমি বলতে পারি নির্দিষ্ট জন্য এই কাজ করে নি ... । আমি মুছে ফেলার চেষ্টা করছিলাম এমন এক টুকরোটি এখনও বাকি আছে। গিট একেবারে চুষে দেয়।
jw

1
এটি --no-commitসত্যিকারের প্রতিশ্রুতি দেওয়ার আগে একত্রিত হওয়া এবং মার্জটি পর্যালোচনা করা ভাল।
ks1322

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