আমি ফিরে আসা তথ্য থেকে ডেটা সংগ্রহ করছি
git diff <commitId>..<commitId>
আমি দৌড়ে গেলাম @@ -1 +1 @@
আমি কী বলছি তা আমি বুঝতে পারি না। আমি গুগলে কিছুটা অনুসন্ধান করেছি কিন্তু ফল লাভ হয়নি।
আমি ফিরে আসা তথ্য থেকে ডেটা সংগ্রহ করছি
git diff <commitId>..<commitId>
আমি দৌড়ে গেলাম @@ -1 +1 @@
আমি কী বলছি তা আমি বুঝতে পারি না। আমি গুগলে কিছুটা অনুসন্ধান করেছি কিন্তু ফল লাভ হয়নি।
উত্তর:
এটি একটি ইউনিফাইড ডিফ হঙ্ক শনাক্তকারী। এটি GNU ডিফুটিলেটস দ্বারা নথিভুক্ত করা হয়েছে।
ইউনিফাইড আউটপুট ফর্ম্যাটটি একটি দুই-লাইনের শিরোনাম দিয়ে শুরু হয়, যা দেখতে এরকম দেখাচ্ছে:
--- থেকে ফাইল-ফাইল-পরিবর্তন-সময় +++ থেকে-ফাইল-ফাইল-পরিবর্তন-সময়সময় স্ট্যাম্পটি
2002-02-21 23:30:39.942229878 -0800তারিখ, ভগ্নাংশের সেকেন্ডের সাথে সময় এবং সময় অঞ্চলটি নির্দেশ করে বলে মনে হচ্ছে । ভগ্নাংশের সেকেন্ডগুলি হোস্টগুলিতে বাদ দেওয়া হয় যা ভগ্নাংশের টাইম স্ট্যাম্পগুলি সমর্থন করে না।
--label=labelবিকল্পের সাহায্যে আপনি শিরোনামের সামগ্রী পরিবর্তন করতে পারেন ; বিকল্প নাম দেখুন ।এরপরে আসে এক বা একাধিক পার্থক্যের; প্রতিটি হুঙ্ক এমন একটি অঞ্চল দেখায় যেখানে ফাইলগুলি পৃথক হয়। ইউনিফাইড বিন্যাস কৃপণ দেখতে দেখতে:
@@ -ফাইল-লাইন-সংখ্যা থেকে ফাইল-লাইন-সংখ্যাগুলিতে @@ লাইন-থেকে-ফাইল -লাইন-থেকে-ফাইল-ফাইলই ...যদি একটি কুঁচকিতে কেবল একটি লাইন থাকে তবে কেবল তার প্রারম্ভিক নম্বরটি প্রদর্শিত হয়। অন্যথায় এর লাইন নম্বরগুলি দেখতে দেখতে ভাল লাগে । একটি খালি কুঁচকে কূটকী অনুসরণকারী লাইনে শুরু বলে মনে করা হয়।
start,countযদি একটি কুঁচক এবং এর প্রসঙ্গে দুটি বা ততোধিক লাইন থাকে তবে এর লাইন নম্বরগুলি দেখতে দেখতে ভাল লাগে । অন্যথায় কেবল তার শেষ লাইনের নম্বর প্রদর্শিত হবে। একটি খালি কুঁচকে ডুবুর পূর্ববর্তী লাইনে শেষ বলে মনে করা হয়।
start,countউভয় ফাইলে সাধারণ লাইনগুলি একটি স্থানের অক্ষর দিয়ে শুরু হয়। লাইনগুলি যে দুটি ফাইলের মধ্যে প্রকৃতপক্ষে পৃথক হয় বাম মুদ্রণ কলামে নীচের একটি সূচক অক্ষর থাকে:
- + +
একটি লাইন প্রথম ফাইলটি করার জন্য এখানে যোগ করা হয়েছিল।- -
এখানে প্রথম ফাইল থেকে একটি লাইন সরানো হয়েছে।
সাধারণ উদাহরণ বিশ্লেষণ
ফর্ম্যাটটি মূলত একই diff -uইউনিফাইড ডিফারেট।
এই ক্ষেত্রে:
diff -u <(seq -w 16) <(seq -w 16 | grep -Ev '^(02|03|14|15)$')
এখানে আমরা 2, 3, 14 এবং 15 লাইনগুলি সরিয়েছি Out আউটপুট:
@@ -1,6 +1,4 @@
01
-02
-03
04
05
06
@@ -11,6 +9,4 @@
11
12
13
-14
-15
16
@@ -1,6 +1,4 @@ অর্থ:
-1,6এর অর্থ হ'ল প্রথম ফাইলটির এই অংশটি 1 লাইন থেকে শুরু হয় এবং মোট 6 টি লাইন দেখায়। সুতরাং এটি লাইন 1 থেকে 6 দেখায়।
1
2
3
4
5
6
-"পুরানো" অর্থ, আমরা সাধারণত এটি হিসাবে প্রার্থনা করি diff -u old new।
+1,4এর অর্থ এই যে দ্বিতীয় ফাইলটির এই অংশটি 1 লাইন থেকে শুরু হয় এবং মোট 4 টি লাইন দেখায়। সুতরাং এটি লাইন 1 থেকে 4 দেখায়।
+ "নতুন" এর অর্থ।
আমাদের 6 টির পরিবর্তে 4 টি লাইন রয়েছে কারণ 2 টি লাইন সরানো হয়েছিল! নতুন হাঙ্কটি ঠিক:
01
04
05
06
@@ -11,6 +9,4 @@ দ্বিতীয় কুনি জন্য অনুরূপ:
পুরানো ফাইলে, আমাদের 6 টি লাইন রয়েছে, পুরানো ফাইলের 11 লাইনে শুরু:
11
12
13
14
15
16
নতুন ফাইলে, আমাদের 4 টি লাইন রয়েছে, নতুন ফাইলের 9 লাইন থেকে শুরু করে:
11
12
13
16
নোটটি 11নতুন ফাইলের 9 তম লাইন হিসাবে উল্লেখ করুন কারণ আমরা ইতিমধ্যে পূর্ববর্তী হুন: 2 এবং 3 টিতে 2 টি লাইন সরিয়ে ফেলেছি।
হুঙ্ক শিরোনাম
আপনার গিট সংস্করণ এবং কনফিগারেশনের উপর নির্ভর করে আপনি লাইনের পাশের একটি কোড লাইনও পেতে পারেন @@, যেমন func1() {:
@@ -4,7 +4,6 @@ func1() {
এটি -pসমতল পতাকা দিয়েও পাওয়া যায় diff।
উদাহরণ: পুরানো ফাইল:
func1() {
1;
2;
3;
4;
5;
6;
7;
8;
9;
}
আমরা যদি লাইনটি সরিয়ে 6ফেলি তবে ভিন্নতা দেখায়:
@@ -4,7 +4,6 @@ func1() {
3;
4;
5;
- 6;
7;
8;
9;
মনে রাখবেন যে func1এটির জন্য সঠিক লাইন নয় : এটি লাইনগুলি এড়িয়ে গেছে 1এবং 2।
এই দুর্দান্ত বৈশিষ্টটি প্রায়শই বলে দেয় যে প্রতিটি কুনি কোন ফাংশন বা শ্রেণীর অন্তর্ভুক্ত, যা ভিন্নতার ব্যাখ্যা দেওয়ার জন্য খুব দরকারী।
শিরোনামটি ঠিক কীভাবে বেছে নেবে তা বেছে নেওয়ার জন্য অ্যালগরিদমটি এখানে আলোচনা করা হয়েছে: গিট ডিফ হঙ্ক শিরোলেখার অংশটি কোথা থেকে এসেছে?
@@ -1,6 +1,4 @@"লাইনের 1 এ শুরু করে, পুরানো লাইনের গণনা 6 ছিল তবে নতুন লাইনের গণনা 4"
এই বর্তমান কুণ্ডলী পরিসীমা সম্পর্কিত তথ্য যা এই রেখাগুলি শুরু করে এবং শেষ হয় কোন লাইন সংখ্যার উপর ভিত্তি করে।
গভীরতার সাথে ব্যাখ্যা করার জন্য http://en.wikedia.org/wiki/Diff#Unified_format পড়ুন ।