প্যাচ প্রয়োগ করার সময় "1 লাইন হোয়াইটস্পেস ত্রুটিগুলি যুক্ত করে" এর অর্থ কী?


104

আমি একটি ক্লোনড রিমোট রিপোজিটরির কয়েকটি মার্কডাউন ফাইলগুলি সম্পাদনা করছি এবং একটি শাখা থেকে অন্য শাখায় প্যাচগুলি তৈরি এবং প্রয়োগের পরীক্ষা করতে চেয়েছিলাম। যাইহোক, যতবারই আমি কোনও পরিবর্তন করি, আমি নিম্নলিখিত বার্তাটি পাইgit apply :

0001-b.patch:16: trailing whitespace.
warning: 1 line adds whitespace errors.

(এটি আমার ম্যাকের ক্ষেত্রে ঘটছে এবং মূল কোডটি কোথায় তৈরি হয়েছিল তা আমি জানি না))

সতর্কতা বার্তার অর্থ কী, এবং আমার যত্ন নেওয়া দরকার?


উত্তর:


125

আপনার যত্ন করার দরকার নেই।

এই সতর্কতাটি হোয়াইটস্পেসের ক্ষেত্রে পাঠ্য ফাইলগুলির পরিষ্কার-পরিচ্ছন্নতার মানকে কার্যকর করে, অনেক প্রোগ্রামার যে ধরণের বিষয়টির দিকে মনোযোগ দেয়। ম্যানুয়ালটি যেমন ব্যাখ্যা করে:

হোয়াইটস্পেস ত্রুটিগুলি যা বিবেচিত হয় সেগুলি কোর.হাইটস্পেস কনফিগারেশন দ্বারা নিয়ন্ত্রিত হয়। ডিফল্টরূপে, পূর্ববর্তী শ্বেতস্পেসগুলি (পুরোপুরি শ্বেতস্পেসের অন্তর্ভুক্ত লাইনগুলি সহ) এবং অবিলম্বে লাইনের প্রাথমিক ইনডেন্টের অভ্যন্তরে একটি ট্যাব অক্ষর দ্বারা অনুসরণ করা একটি স্থান অক্ষর হোয়াইটস্পেস ত্রুটি হিসাবে বিবেচিত হয়।

ডিফল্টরূপে, কমান্ডটি সতর্কতা বার্তা আউটপুট করে তবে প্যাচটি প্রয়োগ করে।

সুতরাং, "ত্রুটি" এর অর্থ হল যে পরিবর্তনটি একটি পূর্ববর্তী শ্বেতস্থান, একটি শ্বেতস্থান-কেবল লাইন, বা কোনও স্থান যা একটি ট্যাব এর আগে পরিচিত করে। এই সত্যটি ব্যতীত, পরিবর্তনটি সম্পর্কে ভ্রান্ত কিছু নেই এবং এটি পরিষ্কার এবং সঠিকভাবে প্রযোজ্য হবে। অন্য কথায়, যদি আপনি "ভুল" শ্বেত স্পেস সম্পর্কে চিন্তা না করেন তবে সতর্কতাটিকে উপেক্ষা করতে বা এটিকে বন্ধ করে দিতে দ্বিধা বোধ করবেন না git config apply.whitespace nowarn


12
প্রতিশ্রুতিবদ্ধতার সাথে নজর দিন git show- যদি আপনার গিট রঙগুলি করে তবে আপনি আপত্তিজনক হোয়াইটস্পেসকে রাগান্বিত লালতে দেখতে পাবেন। এছাড়াও, git show --word-diffআপনাকে কেবল লাইন পরিবর্তনই দেখাবে না, তবে রেখার মাঝের অংশে সন্নিবেশ দেখানো হবে যা প্যাচটি সত্যই কেবল মাঝখানে কোনও শব্দ যুক্ত করেছে কিনা তা যদি দেখায় তবে এটি যদি একটি চলন্ত শ্বেত স্পেসও যুক্ত করে।
ব্যবহারকারী 4815162342

12
আপনার যত্ন করার দরকার নেই । তবে আপনার উচিত। ট্রেলিং হোয়াইটস্পেস নির্মূল করা উচিত।
ফায়ারল

1
ওপি কোনও নতুন ট্রেলিং হোয়াইটস্পেস যুক্ত না করে কেবল ইতিমধ্যে যা বিদ্যমান রয়েছে তা কেবল পরিবর্তন করে।
ব্যবহারকারী 481516234242

4
আমি লিনির শেষটি ইউনিক্সের পরিবর্তে উইন্ডোজ স্টাইলের সিআরএলএফ হলে একই প্রকারে এই প্রপটিকে দেখেছি।
ইজাকুইল মুনস

1
@ ইয়্যারিন যদি আপনি একটি লাইনের মাঝখানে কোনও শব্দ যোগ করেন এবং লাইনটিতে ইতিমধ্যে শ্বেত স্পেস রয়েছে, যা সতর্কবার্তাটিকে ট্রিগার করতে পারে।
ওয়ারেন ডিউ

4

আপনি যখন "পুরানো" হোয়াইটস্পেস ত্রুটি (যে আপনি উত্তরাধিকারের কারণে ধরে রাখতে পারেন) এবং "নতুন" হোয়াইটস্পেস ত্রুটিগুলির (যেটি আপনি এড়াতে চান) এর মধ্যে পার্থক্য রাখতে চান যখন আপনি বৈধভাবে যত্ন নিতে পারেন তার একটি ক্ষেত্রে।

সেই লক্ষ্যে, গিট 2.5+ (কিউ 2 2015) হোয়াইটস্পেস সনাক্তকরণের জন্য আরও সুনির্দিষ্ট বিকল্পের প্রস্তাব করবে।

দেখুন করে 0e383e1 , 0ad782f এবং d55ef3e [26 মে 2015] এর দ্বারা junio সি Hamano ( gitster)
( জুনিওর মধ্যে মার্জড কমিট 709cd91 , 11 জুন 2015)

diff.c: --ws-error-highlight=<kind>বিকল্প

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

পরিচয় দিন --ws-error-highlight=<kind>বিকল্পটি তাদের মধ্যে কমা দিয়ে পৃথক করা তালিকা পাস করতে দেয় old, newএবংcontext কি লাইন হাইলাইট করতে হোয়াইটস্পেস ত্রুটিগুলি নির্দিষ্ট করতে।

ডকুমেন্টেশন হিসাবে এখন :

--ws-error-highlight=<kind>

<kind>বর্ণ দ্বারা বর্ণিত রেখায় সাদা স্পেস ত্রুটিগুলি হাইলাইট করুন color.diff.whitespace
<kind>একটি কমা তালিকা আলাদা old, new,context
যখন এই বিকল্পটি দেওয়া হয় না, কেবল newলাইনগুলিতে শ্বেতস্পেসের ত্রুটিগুলি হাইলাইট করা হয়।

উদাহরণস্বরূপ --ws-error-highlight=new,oldমুছে ফেলা এবং যুক্ত হওয়া উভয় লাইনেই হোয়াইটস্পেস ত্রুটি হাইলাইট করে।
allএকটি স্বল্প হাত হিসাবে ব্যবহার করা যেতে পারেold,new,context

উদাহরণস্বরূপ, পুরানো প্রতিশ্রুতিতে একটি হোয়াইটস্পেস ত্রুটি ছিল ( bbb), তবে আপনি কেবলমাত্র নতুন ত্রুটিগুলিতে মনোযোগ দিতে পারেন (এর শেষে still bbbএবং ccc):

পুরানো এবং নতুন শাটস্পেস ত্রুটি

(পরীক্ষা পরে সম্পন্ন t/t4015-diff-whitespace.sh )


গিট 2.26 (কিউ 12020) সহ, diff-*সাবকম্যান্ডগুলির নদীর গভীরতানির্ণয় পরিবারটি এখন মনোযোগ দেয়diff.wsErrorHighlight কনফিগারেশনের , যা আগে উপেক্ষা করা হয়েছে; এটি অনুমতি দেয় "git add -p " শেষ ব্যবহারকারীকে শ্বেত স্পেসের সমস্যাগুলি দেখানোর ।

দেখুন কমিট da80635 (31 জানুয়ারি 2020) দ্বারা জেফ কিং ( peff)
(দ্বারা একীভূত junio সি Hamano - gitster- মধ্যে df04a31 কমিট , 14 ফেব্রুয়ারী 2020)

diff: diff.wsErrorHightlight "বেসিক" কনফিগারেশনে সরান

সাইন-অফ-বাই: জেফ কিং

আমরা পৃথক .আরওর হাইটলাইটে পার্স করি git_diff_ui_config(), এর অর্থ এটি প্লাম্বিং কমান্ডগুলির জন্য কার্যকর হয় না, কেবল git diffনিজের মতো চীনামাটির জন্য ।
এটি হালকা বিরক্তিকর কারণ এর স্ক্রিপ্টগুলি বোঝায় add--interactiveযা রঙের সাথে ব্যবহারকারী-দৃশ্যমান পৃথক উত্পাদন করে, বিকল্পটিকে সম্মান করবেন না

আমরা সেই স্ক্রিপ্টটি কনফিগারকে বিশ্লেষণ করতে শিখতে পারি এবং এটি --ws-error-highlightনদীর গভীরতানির্ণয়ের পাশাপাশি পাস করতে পারি । তবে এর একটি সহজ সমাধান রয়েছে।

এই বিকল্পটিকে সম্মান জানাতে নদীর গভীরতানির্ণয়ের পক্ষে যুক্তিসঙ্গতভাবে নিরাপদ হওয়া উচিত, কারণ রঙটি অন্যথায় সক্ষম করা হলে কেবল এটি লাথি দেয়। এবং বর্ণযুক্ত আউটপুট বিশ্লেষণকারী যে কোনও ব্যক্তিকে ইতিমধ্যে সেই সত্যটি মোকাবেলা color.diff.*করতে হবে যা তারা দেখায় সঠিক আউটপুট পরিবর্তন করতে পারে; 9a1805a872git_diff_basic_config() সালে প্রতিষ্ঠিত হওয়ার পর থেকে এই বিকল্পগুলির অংশ ছিল (একটি "বেসিক" ডিফ কনফিগারেশন কলব্যাক যোগ করুন, ২০০৮-০১-০৪, গিট ভি 1.5.4-আরসি 3)।

সুতরাং আমরা কেবল এটি "বেসিক" কনফিগারেশনে স্থানান্তরিত করতে পারি, যা add--interactiveএকই নৌকার অন্য কোনও স্ক্রিপ্টের সাথে কোনও নদীর গভীরতানির্ণয় ব্যবহারকারীদের ক্ষতির ঝুঁকির সাথে সংশোধন করে।



-2

কারণ লাইন এর সাথে স্থির TABহয় SPACE। প্যাচ ফাইল যান এবং TABসঙ্গে প্রতিস্থাপন SPACE। উদাহরণস্বরূপ, স্থানটি সরানোর জন্য প্যাচ ফাইল টাইপ x থেকে লাইনে + ভিমে অন টাইম করুন এবং সাইন + এবং অপসারণ না করতে একিভিউতে মূল আকারে স্পেস (সিটিআরএল) .োকান।


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