এটি হল কমান্ড git-rev-list যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
git-rev-list - তালিকাগুলি বিপরীত কালানুক্রমিক ক্রমে বস্তুর প্রতিশ্রুতি দেয়
সাইনোপিসিস
ফালতু বা এলেবেলে লোক rev-তালিকা [ -- সর্বোচ্চ-গণনা = ]
[ --ছাড়া= ]
[ --সর্বোচ্চ বয়স= ]
[ --মিনিট-বয়স= ]
[---স্পর্স]
[-একত্রিত হয়]
[--একত্রিত হয় না]
[ --মিন-পিতামাতা= ]
[---না-মিন-পিতামাতা]
[ -- সর্বোচ্চ-পিতামাতা= ]
[ --কোন-সর্বোচ্চ পিতামাতা]
[---প্রথম পিতামাতা]
[--খালি সরান]
[---সম্পূর্ণ-ইতিহাস]
[ --না ]
[---সব]
[ --শাখা[= ] ]
[ --ট্যাগ[= ] ]
[ --রিমোট[= ] ]
[ --গ্লোব= ]
[---উপেক্ষা-অনুপস্থিত]
[ --stdin ]
[--- শান্ত]
[---টপো-অর্ডার]
[--- পিতামাতা]
[---টাইমস্ট্যাম্প]
[ --বাম ডান ]
[-শুধুমাত্র বাম]
[-শুধুমাত্র]
[---চেরি-মার্ক]
[---চেরি-পিক]
[ --এনকোডিং= ]
[ --(লেখক|কমিটার|গ্রেপ)= ]
[ --regexp-ignore-case | -আমি]
[ --extended-regexp | -ই]
[ --স্থির-স্ট্রিং | -চ]
[ --তারিখ= ]
[ [ --বস্তু | --অবজেক্ট-এজ | --অবজেক্ট-এজ-আক্রমনাত্মক]
[-আনপ্যাক করা]]
[ -- সুন্দর | --হেডার]
[ --দ্বিখণ্ডিত করা ]
[--- দ্বিখণ্ডিত-ভার্স]
[---দ্বিভাগ-সমস্ত]
[ --একত্রিত করা ]
[---বিপরীত]
[ --ওয়াক-রিফ্লাগস]
[ -- হাঁটা না ] [ -- হাঁটতে না পারা ]
[-গণনা]
[--ব্যবহার-বিটম্যাপ-সূচক]
... [ -- ...]
বর্ণনাঃ
প্রদত্ত প্রতিশ্রুতি(গুলি) থেকে অভিভাবক লিঙ্কগুলি অনুসরণ করে পৌঁছানো যায় এমন প্রতিশ্রুতিগুলির তালিকা করুন,
কিন্তু একটি দিয়ে দেওয়া এক(গুলি) থেকে পৌঁছানো যায় এমন কমিটগুলি বাদ দিন ^ তাদের সামনে.
ডিফল্টরূপে আউটপুট বিপরীত কালানুক্রমিক ক্রমে দেওয়া হয়।
আপনি এটিকে একটি সেট অপারেশন হিসাবে ভাবতে পারেন। কমান্ড লাইনে প্রদত্ত প্রতিশ্রুতিগুলি একটি সেট তৈরি করে
কমিট যা তাদের যেকোন থেকে পৌঁছানো যায়, এবং তারপর যেকোন থেকে পৌঁছানো যায়
সঙ্গে দেওয়া আছে ^ সামনে যে সেট থেকে বিয়োগ করা হয়. বাকি কমিট কি
কমান্ডের আউটপুটে বেরিয়ে আসে। বিভিন্ন অন্যান্য বিকল্প এবং পাথ পরামিতি ব্যবহার করা যেতে পারে
ফলাফল আরও সীমাবদ্ধ করতে।
সুতরাং, নিম্নলিখিত কমান্ড:
$ git rev-list foo বার ^baz
মানে "যে সমস্ত কমিট থেকে পৌঁছানো যায় তার তালিকা করুন foo বিন্যাস or বার, কিন্তু থেকে না ভিত্তি".
একটি বিশেষ নোটেশন ".." ^' এর জন্য শর্ট-হ্যান্ড হিসাবে ব্যবহার করা যেতে পারে '
"উদাহরণস্বরূপ, নিচের যেকোনো একটি বিনিময়যোগ্যভাবে ব্যবহার করা যেতে পারে:
$ git rev-তালিকা মূল..HEAD
$ git rev-list HEAD ^origin
আরেকটি বিশেষ স্বরলিপি হল "..."যা একত্রিত করার জন্য দরকারী
কমিটের ফলস্বরূপ সেট দুটি অপারেন্ডের মধ্যে প্রতিসম পার্থক্য। দ্য
নিম্নলিখিত দুটি কমান্ড সমতুল্য:
$ গিট রেভ-লিস্ট AB -- নয় $(গিট মার্জ-বেস --সমস্ত AB)
$ git rev-list A...B
rev-তালিকা একটি অত্যন্ত প্রয়োজনীয় গিট কমান্ড, যেহেতু এটি তৈরি করার ক্ষমতা প্রদান করে এবং
traverse প্রতিশ্রুতি পূর্বপুরুষ গ্রাফ. এই কারণে, এটি বিভিন্ন বিকল্প অনেক আছে যে
এটিকে বিভিন্ন কমান্ড দ্বারা ব্যবহার করতে সক্ষম করে ফালতু বা এলেবেলে লোক দ্বিখণ্ডিত করা এবং ফালতু বা এলেবেলে লোক রিপ্যাক.
বিকল্প
সমর্পণ করা সীমিত
কমিটের একটি পরিসীমা নির্দিষ্ট করার পাশাপাশি বিশেষ নোটেশন ব্যবহার করে তালিকাভুক্ত করা উচিত
বর্ণনায় ব্যাখ্যা করা হয়েছে, অতিরিক্ত কমিট সীমাবদ্ধতা প্রয়োগ করা যেতে পারে।
আরও বিকল্প ব্যবহার করা সাধারণত আউটপুটকে আরও সীমাবদ্ধ করে (যেমন --since= সীমাবদ্ধ
এর চেয়ে নতুন কমিট করে , এবং --grep= দিয়ে এটি ব্যবহার করে প্রতিশ্রুতির আরও সীমাবদ্ধতা
যার লগ মেসেজে একটি লাইন আছে যা মেলে ), যদি না অন্যথায় উল্লেখ করা হয়।
নোট করুন যে এইগুলি কমিট অর্ডার এবং ফর্ম্যাটিং বিকল্পগুলির আগে প্রয়োগ করা হয়, যেমন
-- বিপরীত।
- , -n , --max-count=
আউটপুট কমিট সংখ্যা সীমিত.
--ছাড়া=
লাফালাফি করা সংখ্যা কমিট আউটপুট দেখাতে শুরু করার আগে কমিট করে।
-- থেকে= , --পরে=
একটি নির্দিষ্ট তারিখের চেয়ে সাম্প্রতিক কমিট দেখান।
-- পর্যন্ত= , --আগে =
একটি নির্দিষ্ট তারিখের চেয়ে পুরানো কমিট দেখান।
--সর্বোচ্চ বয়স= , --মিনিট-বয়স=
নির্দিষ্ট সময়ের পরিসরে কমিট আউটপুট সীমাবদ্ধ করুন।
--লেখক= , --কমিটার=
কমিট আউটপুটকে লেখক/কমিটার হেডার লাইনের সাথে সীমাবদ্ধ করুন যা মেলে
নির্দিষ্ট প্যাটার্ন (নিয়মিত অভিব্যক্তি)। একাধিক --লেখক= সহ , কমিট
যার লেখক প্রদত্ত নিদর্শনগুলির সাথে মিলে যায় (একইভাবে একাধিক জন্য) নির্বাচিত হয়
--কমিটার= )
--grep-reflog=
নির্দিষ্ট প্যাটার্নের সাথে মেলে reflog এন্ট্রি সহ কমিট আউটপুট সীমিত করুন
(নিয়মিত অভিব্যক্তি)। একাধিক --grep-reflog এর সাথে, যার reflog বার্তা কমিট করে
প্রদত্ত নিদর্শন নির্বাচন করা হয় যে কোনো মেলে. যদি না এই বিকল্পটি ব্যবহার করা একটি ত্রুটি
--ওয়াক-রিফ্লগ ব্যবহার করা হচ্ছে।
--গ্রেপ=
নির্দিষ্ট প্যাটার্নের সাথে মেলে এমন লগ বার্তা সহ কমিট আউটপুটকে সীমাবদ্ধ করুন
(নিয়মিত অভিব্যক্তি)। একাধিক সহ --grep= , কমিট যার বার্তা
প্রদত্ত নিদর্শনগুলির মধ্যে যে কোনও মেলে (কিন্তু দেখুন --সমস্ত-ম্যাচ)।
--সমস্ত মিল
কমিট আউটপুটকে সীমিত করুন যেগুলি দেওয়া সমস্ত মেলে --grep, এর পরিবর্তে
অন্তত একটি মেলে।
--ইনভার্ট-গ্রেপ
প্যাটার্নের সাথে মেলে না এমন লগ বার্তা সহ কমিট আউটপুটকে সীমাবদ্ধ করুন
--grep= দিয়ে নির্দিষ্ট করা হয়েছে .
-i, --regexp-ignore-case
লেটার কেস বিবেচনা না করে রেগুলার এক্সপ্রেশন সীমিত প্যাটার্নের সাথে মিল করুন।
--বেসিক-রেগএক্সপ
সীমাবদ্ধ নিদর্শনগুলিকে মৌলিক নিয়মিত অভিব্যক্তি হিসাবে বিবেচনা করুন; এটি ডিফল্ট।
-E, --extended-regexp
রেগুলার এক্সপ্রেশনের পরিবর্তে প্রসারিত করার জন্য সীমিত প্যাটার্ন বিবেচনা করুন
ডিফল্ট মৌলিক রেগুলার এক্সপ্রেশন।
-F, --স্থির-স্ট্রিং
সীমাবদ্ধ প্যাটার্নগুলিকে স্থির স্ট্রিং হিসাবে বিবেচনা করুন (প্যাটার্নকে একটি হিসাবে ব্যাখ্যা করবেন না
নিয়মিত অভিব্যক্তি)।
--পারল-রেগএক্সপ
সীমিত নিদর্শনগুলিকে পার্ল-সামঞ্জস্যপূর্ণ রেগুলার এক্সপ্রেশন হিসেবে বিবেচনা করুন। প্রয়োজন
libpcre কম্পাইল করা হবে।
-- সরান-খালি
একটি নির্দিষ্ট পথ গাছ থেকে অদৃশ্য হয়ে গেলে থামুন।
-- একত্রিত হয়
প্রিন্ট শুধুমাত্র মার্জ কমিট. এটি ঠিক --মিন-পিতাপিতা=2 এর মতো।
--নো-একত্রিত হয়
একাধিক অভিভাবকের সাথে কমিট প্রিন্ট করবেন না। এই হিসাবে ঠিক একই
--সর্বোচ্চ পিতামাতা=1.
--মিন-পিতামাতা= , --max-পিতামাতা= , --নো-মিন-পিতা-মাতা, --না-সর্বোচ্চ-পিতা-মাতা
শুধুমাত্র সেই কমিটগুলি দেখান যার অন্তত (বা সর্বাধিক) অনেক অভিভাবক কমিট করেন। ভিতরে
নির্দিষ্ট, --max-parents=1 একই --no-merges, --min-parents=2 একই
-- একত্রিত হয়। --max-parents=0 সমস্ত রুট কমিট দেয় এবং --min-parents=3 সমস্ত অক্টোপাস
একত্রিত করে
--নো-মিন-অভিভাবক এবং --নো-ম্যাক্স-অভিভাবক এই সীমাগুলি পুনরায় সেট করুন (কোন সীমা নেই)।
সমতুল্য ফর্মগুলি হল --min-parents=0 (যে কোনো কমিটের 0 বা তার বেশি অভিভাবক থাকে) এবং
--max-parents=-1 (নেতিবাচক সংখ্যা কোন উচ্চ সীমা নির্দেশ করে না)।
--প্রথম পিতামাতা
মার্জ কমিট দেখে শুধুমাত্র প্রথম প্যারেন্ট কমিট অনুসরণ করুন। এই অপশন দিতে পারেন একটি
একটি নির্দিষ্ট বিষয় শাখার বিবর্তন দেখার সময় ভাল ওভারভিউ, কারণ
একটি বিষয় শাখায় একত্রীকরণ শুধুমাত্র আপডেট আপস্ট্রিম থেকে সামঞ্জস্য সম্পর্কে হতে থাকে
সময়ে সময়ে, এবং এই বিকল্পটি আপনাকে আনা স্বতন্ত্র প্রতিশ্রুতি উপেক্ষা করতে দেয়
যেমন একটি একত্রীকরণ দ্বারা আপনার ইতিহাস. --bisect এর সাথে একত্রিত করা যাবে না।
--না
এর অর্থ বিপরীত করে ^ নিম্নলিখিত সমস্ত সংশোধনের জন্য উপসর্গ (বা এর অভাব)
স্পেসিফায়ার, পরবর্তী পর্যন্ত -- না।
--সব
এমনভাবে ভান করুন যেন refs/-এর সমস্ত refs কমান্ড লাইনে হিসাবে তালিকাভুক্ত .
--শাখা[= ]
ভান করুন যেন refs/head-এর সমস্ত refs কমান্ড লাইনে তালিকাভুক্ত করা হয়েছে .
If দেওয়া হয়, প্রদত্ত শেল গ্লোব মেলে শাখাগুলিকে সীমাবদ্ধ করুন। যদি প্যাটার্ন
অভাব আছে ?, *, বা [, /* শেষে উহ্য হয়।
--ট্যাগ[= ]
ভান করুন যেন refs/ট্যাগের সমস্ত refs কমান্ড লাইনে তালিকাভুক্ত করা হয়েছে । যদি
দেওয়া হয়, প্রদত্ত শেল গ্লোবের সাথে মিলে যাওয়া ট্যাগগুলিকে সীমাবদ্ধ করুন। যদি প্যাটার্নের অভাব থাকে ?,
*, বা [, /* শেষে উহ্য হয়।
--রিমোট[= ]
ভান করুন যেন refs/remotes-এর সমস্ত refs কমান্ড লাইনে তালিকাভুক্ত করা হয়েছে .
If দেওয়া হয়, রিমোট-ট্র্যাকিং শাখাগুলিকে প্রদত্ত শেলগুলির সাথে মেলে
গ্লোব যদি প্যাটার্নের অভাব থাকে ?, *, বা [, /* শেষে উহ্য হয়।
--গ্লোব=
এমন ভান করুন যেন সমস্ত রেফ মিলে শেল গ্লোব তালিকাভুক্ত করা হয়
কমান্ড লাইন হিসাবে । নেতৃস্থানীয় refs/, অনুপস্থিত থাকলে স্বয়ংক্রিয়ভাবে পূর্বে লেখা হয়। যদি
প্যাটার্নের অভাব ?, *, বা [, /* শেষে উহ্য হয়।
--বাদ=
রেফের মিল অন্তর্ভুক্ত করবেন না যে পরবর্তী --সমস্ত, --শাখা, --ট্যাগ,
--remotes, অথবা --glob অন্যথায় বিবেচনা করবে। এই বিকল্পের পুনরাবৃত্তি জমে
পরবর্তী --সমস্ত, --শাখা, --ট্যাগ, --রিমোট, বা --গ্লোব পর্যন্ত বর্জনের নিদর্শন
বিকল্প (অন্যান্য বিকল্প বা আর্গুমেন্ট জমা প্যাটার্ন পরিষ্কার করে না)।
প্রদত্ত প্যাটার্নগুলি refs/heads, refs/tags বা refs/remotes দিয়ে শুরু করা উচিত নয় যখন
যথাক্রমে --শাখা, --ট্যাগ, বা --রিমোটে প্রয়োগ করা হয় এবং সেগুলি অবশ্যই দিয়ে শুরু করতে হবে
refs/ যখন --glob বা --all এ প্রয়োগ করা হয়। যদি একটি পিছিয়ে /* উদ্দেশ্য, এটা দিতে হবে
স্পষ্টভাবে।
--রিফ্লগ
ভান করুন যেন reflogs দ্বারা উল্লিখিত সমস্ত বস্তু কমান্ড লাইনে তালিকাভুক্ত হয়
.
-- উপেক্ষা-অনুপস্থিত
ইনপুটে একটি অবৈধ বস্তুর নাম দেখে এমন ভান করুন যেন খারাপ ইনপুটটি ছিল না
দেওয়া।
--stdin
ছাড়াও কমান্ড লাইনে তালিকাভুক্ত, মান থেকে তাদের পড়ুন
ইনপুট. যদি একটি -- বিভাজক দেখা যায়, কমিট পড়া বন্ধ করুন এবং পাথ পড়া শুরু করুন
ফলাফল সীমাবদ্ধ।
-- শান্ত
স্ট্যান্ডার্ড আউটপুটে কিছু মুদ্রণ করবেন না। এই ফর্ম প্রাথমিকভাবে অনুমতি বোঝানো হয়
বস্তুর একটি পরিসীমা সম্পূর্ণরূপে সংযুক্ত কিনা তা দেখতে প্রস্থান অবস্থা পরীক্ষা করার জন্য কলকারী (বা
না). এটি stdout কে /dev/null এ পুনঃনির্দেশিত করার চেয়ে দ্রুত কারণ আউটপুট এর প্রয়োজন নেই
ফরম্যাট করা
--চেরি-মার্ক
যেমন --cherry-pick (নীচে দেখুন) কিন্তু বাদ দেওয়ার পরিবর্তে = দিয়ে সমতুল্য কমিট চিহ্নিত করুন
তাদের, এবং + এর সাথে অসম।
--চেরি-পিক
"অন্য দিকে" অন্য একটি প্রতিশ্রুতির মতো একই পরিবর্তন প্রবর্তন করে এমন কোনও প্রতিশ্রুতি বাদ দিন
যখন কমিটের সেট প্রতিসম পার্থক্যের সাথে সীমাবদ্ধ থাকে।
উদাহরণস্বরূপ, যদি আপনার দুটি শাখা থাকে, A এবং B, সমস্ত কমিট তালিকাভুক্ত করার একটি সাধারণ উপায়
তাদের মধ্যে শুধুমাত্র একটি পাশ আছে -- বাম-ডানে (বিবরণের নিচের উদাহরণটি দেখুন
--বাম-ডান বিকল্পের)। যাইহোক, এটি চেরি-বাছাই করা কমিটগুলি দেখায়
অন্য শাখা থেকে (উদাহরণস্বরূপ, "বি-তে 3য়" শাখা A থেকে চেরি-পিক করা যেতে পারে)।
এই বিকল্পের সাহায্যে, এই ধরনের জোড়া কমিট আউটপুট থেকে বাদ দেওয়া হয়।
--শুধু-বাম, --শুধুমাত্র
তালিকা শুধুমাত্র একটি প্রতিসম পরিসরের নিজ নিজ দিকে কমিট করে, অর্থাৎ শুধুমাত্র যা
চিহ্নিত করা হবে < resp. > দ্বারা --বাম-ডানে।
উদাহরণস্বরূপ, --cherry-pick --right-only A...B B থেকে সেই কমিটগুলি বাদ দেয় যা
A বা A তে একটি কমিটের সাথে প্যাচ-সমতুল্য। অন্য কথায়, এটি + কমিট তালিকা করে
গিট চেরি এ বি থেকে। আরও স্পষ্ট করে বললে, --চেরি-পিক --রাইট-অনলি --নো-মার্জস দেয়
সঠিক তালিকা।
--চেরি
--right-only --cherry-mark --no-merges-এর প্রতিশব্দ; আউটপুট সীমিত করতে দরকারী
আমাদের পক্ষের প্রতিশ্রুতি এবং a এর অন্য দিকে প্রয়োগ করা হয়েছে সেগুলি চিহ্নিত করুন
গিট লগ --চেরি আপস্ট্রিম...মাইব্র্যাঞ্চের সাথে কাঁটাযুক্ত ইতিহাস, গিট চেরির মতো
আপস্ট্রিম mybranch.
-জি, --ওয়াক-রিফ্লগস
কমিট অ্যানস্ট্রি চেইনে হাঁটার পরিবর্তে, সাম্প্রতিক থেকে রিফ্লগ এন্ট্রি হাঁটুন
এক থেকে বয়স্কদের। যখন এই বিকল্পটি ব্যবহার করা হয় তখন আপনি বাদ দেওয়ার প্রতিশ্রুতি নির্দিষ্ট করতে পারবেন না
(এটাই, ^প্রতিশ্রুতি, কমিট1..কমিট2, এবং কমিট1...কমিট2 স্বরলিপি ব্যবহার করা যাবে না)।
Oneline ছাড়া অন্য --pretty বিন্যাসের সাথে (স্পষ্ট কারণে), এটি আউটপুট ঘটায়
reflog থেকে নেওয়া তথ্য দুটি অতিরিক্ত লাইন আছে. গতানুগতিক, কমিট@{Nth}
আউটপুটে স্বরলিপি ব্যবহার করা হয়। যখন প্রারম্ভিক কমিট হিসাবে নির্দিষ্ট করা হয় কমিট@{এখন},
আউটপুটও ব্যবহার করে কমিট@{টাইমস্ট্যাম্প} পরিবর্তে স্বরলিপি। অধীনে --pretty=oneline, the
কমিট বার্তাটি একই লাইনে এই তথ্যের সাথে উপসর্গযুক্ত। এই বিকল্পটি পারে না
সাথে মিলিত হবে --বিপরীত। আরো দেখুন git-reflog(1).
--একত্রিত করা
একটি ব্যর্থ একত্রীকরণের পরে, রেফ দেখান যে ফাইলগুলিকে স্পর্শ করে যেগুলি একটি দ্বন্দ্ব আছে এবং বিদ্যমান নেই৷
সব মাথা একত্রিত করতে.
--সীমানা
আউটপুট বর্জিত সীমানা কমিট। সীমানা কমিট - এর সাথে উপসর্গযুক্ত।
--ব্যবহার-বিটম্যাপ-সূচক
প্যাক বিটম্যাপ সূচক ব্যবহার করে ট্রাভার্সালের গতি বাড়ানোর চেষ্টা করুন (যদি একটি উপলব্ধ থাকে)। বিঃদ্রঃ
যে --অবজেক্টের সাথে যাত্রা করার সময়, গাছ এবং ব্লব তাদের যুক্ত থাকবে না
পথ মুদ্রিত।
ইতিহাস সরলীকরণ
কখনও কখনও আপনি শুধুমাত্র ইতিহাসের অংশগুলিতে আগ্রহী হন, উদাহরণস্বরূপ কমিটগুলি৷
একটি নির্দিষ্ট পরিবর্তন . কিন্তু এর দুটি অংশ রয়েছে ইতিহাস সরলীকরণ, একটা অংশ
কমিট বাছাই করা হচ্ছে এবং অন্যটি হল এটি কীভাবে করা যায়, কারণ বিভিন্ন কৌশল রয়েছে
ইতিহাস সরল করা।
নিম্নলিখিত বিকল্পগুলি দেখানোর জন্য কমিট নির্বাচন করুন:
প্রদত্ত সংশোধন করার প্রতিশ্রুতি দেয় নির্বাচিত হয়
--সরলীকরণ-দ্বারা সাজসজ্জা
কিছু শাখা বা ট্যাগ দ্বারা উল্লেখ করা কমিট নির্বাচন করা হয়.
মনে রাখবেন যে একটি অর্থপূর্ণ ইতিহাস দিতে অতিরিক্ত প্রতিশ্রুতি দেখানো যেতে পারে।
নিম্নলিখিত বিকল্পগুলি সরলীকরণের পদ্ধতিকে প্রভাবিত করে:
ডিফল্ট মোড
গাছের চূড়ান্ত অবস্থা ব্যাখ্যা করে ইতিহাসকে সহজতম ইতিহাসে সরল করে।
সবচেয়ে সহজ কারণ এটি কিছু পার্শ্ব শাখা ছাঁটাই করে যদি শেষ ফলাফল একই হয় (যেমন
একই বিষয়বস্তুর সাথে শাখা একত্রিত করা)
--সম্পূর্ণ ইতিহাস
ডিফল্ট মোড হিসাবে একই, কিন্তু কিছু ইতিহাস ছাঁটাই না.
-- ঘন
শুধুমাত্র নির্বাচিত প্রতিশ্রুতিগুলি দেখানো হয়, এছাড়াও কিছু একটি অর্থপূর্ণ ইতিহাস রয়েছে৷
--স্পর্স
সরলীকৃত ইতিহাসে সমস্ত প্রতিশ্রুতি দেখানো হয়।
--সরলীকরণ-একত্রীকরণ
ফলাফল থেকে কিছু অপ্রয়োজনীয় মার্জ অপসারণের জন্য --full-history-এর অতিরিক্ত বিকল্প
ইতিহাস, যেহেতু এই একত্রীকরণে অবদান রাখার জন্য কোনো নির্বাচিত প্রতিশ্রুতি নেই।
-- বংশ-পথ
প্রদর্শনের জন্য কমিটের একটি পরিসীমা দেওয়া হলে (যেমন কমিট1..কমিট2 or কমিট2 ^কমিট1),
শুধুমাত্র ডিসপ্লে কমিট যা সরাসরি এর মধ্যে পূর্বপুরুষ শৃঙ্খলে বিদ্যমান কমিট1 এবং
কমিট2, অর্থাৎ কমিট যে উভয়ের বংশধর কমিট1, এবং এর পূর্বপুরুষ কমিট2.
একটি আরো বিস্তারিত ব্যাখ্যা অনুসরণ করে.
ধরুন আপনি foo হিসাবে উল্লেখ করেছেন . আমরা এমন কমিটকে বলব যেগুলো foo সংশোধন করে!
এবং বাকি ট্রিসম। (foo এর জন্য ফিল্টার করা একটি পার্থক্যে, তারা আলাদা এবং সমান দেখায়,
যথাক্রমে।)
নিম্নলিখিত, আমরা সবসময় একই উদাহরণ ইতিহাস উল্লেখ করা হবে ব্যাখ্যা করার জন্য
সরলীকরণ সেটিংস মধ্যে পার্থক্য. আমরা অনুমান করি যে আপনি একটি ফাইলের জন্য ফিল্টার করছেন
foo এই কমিট গ্রাফে:
.-A---M---N---O---P---Q
/ / / / / / /
IBCDEY
\ / / / /
`------------' এক্স
ইতিহাসের অনুভূমিক রেখা A---Q প্রতিটি মার্জের প্রথম প্যারেন্ট হিসেবে ধরা হয়। দ্য
প্রতিশ্রুতিগুলি হল:
· I হল প্রাথমিক প্রতিশ্রুতি, যেখানে foo বিষয়বস্তু "asdf" এবং একটি ফাইল কুক্স সহ বিদ্যমান
"quux" বিষয়বস্তু সহ বিদ্যমান। প্রাথমিক কমিটগুলিকে একটি খালি গাছের সাথে তুলনা করা হয়, তাই আমি
!গাছ।
· A-তে, foo-এ শুধু "foo" থাকে।
· B-এ A এর মত একই পরিবর্তন রয়েছে। এর একত্রীকরণ M তুচ্ছ এবং তাই সবার জন্য TREESAME
বাবা।
· C foo পরিবর্তন করে না, কিন্তু এর একত্রীকরণ N এটিকে "foobar" এ পরিবর্তন করে, তাই এটি TREESAME নয়
যে কোন পিতামাতার কাছে।
· D foo কে "baz" এ সেট করে। এর মার্জ O N এবং D থেকে "foobarbaz" এর স্ট্রিংগুলিকে একত্রিত করে;
অর্থাৎ, এটি কোনো পিতামাতার কাছে গাছের মতো নয়।
· E quux কে "xyzzy" এ পরিবর্তন করে, এবং এর মার্জ P স্ট্রিংগুলিকে "quux xyzzy" তে একত্রিত করে। পি হল
ট্রিসেম থেকে O, কিন্তু ই নয়।
· X হল একটি স্বাধীন রুট কমিট যা একটি নতুন ফাইল সাইড যোগ করেছে এবং Y এটিকে সংশোধন করেছে। Y হল
TREESAME থেকে X। এর মার্জ Q-এর পাশ P-এর সাথে যোগ হয়েছে, এবং Q-এর P-এর সঙ্গে TREESAME, কিন্তু Y-তে নয়।
rev-তালিকা ইতিহাসের মধ্য দিয়ে পিছনে চলে যায়, যার উপর ভিত্তি করে কমিট সহ বা বাদ দেওয়া
--পূর্ণ-ইতিহাস এবং/অথবা পিতামাতার পুনর্লিখন (--মাতাপিতা বা --শিশুদের মাধ্যমে) ব্যবহার করা হয়। দ্য
নিম্নলিখিত সেটিংস উপলব্ধ।
ডিফল্ট মোড
প্রতিশ্রুতি অন্তর্ভুক্ত করা হয় যদি তারা কোনো পিতামাতার কাছে ট্রিসম না হয় (যদিও এটি হতে পারে
পরিবর্তিত হয়েছে, দেখুন -- নিচে sparse)। যদি প্রতিশ্রুতি একটি মার্জ হয়, এবং এটি একটি থেকে TREESAME ছিল৷
অভিভাবক, শুধুমাত্র সেই অভিভাবককে অনুসরণ করুন। (এমনকি যদি বেশ কিছু ট্রিসম পিতামাতা থাকে, অনুসরণ করুন
তাদের মধ্যে শুধুমাত্র একজন।) অন্যথায়, সমস্ত পিতামাতাকে অনুসরণ করুন।
এর ফলে:
.-A---N---O
//
আমি---------ডি
লক্ষ্য করুন কিভাবে শুধুমাত্র TREESAME পিতামাতার অনুসরণ করার নিয়ম, যদি একটি উপলব্ধ থাকে, B সরিয়ে দেওয়া হয়
সম্পূর্ণ বিবেচনা থেকে। C কে N এর মাধ্যমে বিবেচনা করা হয়েছিল, কিন্তু এটি ট্রিসম। রুট কমিট
একটি খালি গাছের সাথে তুলনা করা হয়, তাই আমি!
পিতামাতা/সন্তানের সম্পর্ক শুধুমাত্র --পিতা-মাতার সাথে দৃশ্যমান, কিন্তু এটি প্রভাবিত করে না
কমিট ডিফল্ট মোডে নির্বাচিত হয়, তাই আমরা মূল লাইনগুলি দেখিয়েছি।
-- সম্পূর্ণ-ইতিহাস পিতামাতার পুনর্লিখন ছাড়া
এই মোডটি একটি বিন্দুতে ডিফল্ট থেকে আলাদা: সর্বদা একটি মার্জের সমস্ত পিতামাতাকে অনুসরণ করুন,
এমনকি যদি এটি তাদের একজনের কাছে গাছের মতো হয়। এমনকি একাধিক দিকে একীভূত হলেও
কমিট যেগুলি অন্তর্ভুক্ত করা হয়েছে, এটি বোঝায় না যে মার্জ নিজেই! মধ্যে
উদাহরণ, আমরা পেতে
IABNDOPQ
M কে বাদ দেওয়া হয়েছে কারণ এটি পিতামাতা উভয়ের জন্যই TREESAME। ই, সি এবং বি সবাই হেঁটে গিয়েছিল,
কিন্তু শুধুমাত্র B ছিল !TEESAME, তাই অন্যগুলো দেখা যায় না।
মনে রাখবেন যে অভিভাবক পুনর্লিখন ছাড়া, এটি সম্পর্কে কথা বলা সত্যিই সম্ভব নয়
প্রতিশ্রুতির মধ্যে পিতামাতা/সন্তানের সম্পর্ক, তাই আমরা তাদের সংযোগ বিচ্ছিন্ন দেখাই।
পিতামাতার পুনর্লিখন সহ পূর্ণ-ইতিহাস
সাধারণ প্রতিশ্রুতি শুধুমাত্র তখনই অন্তর্ভুক্ত করা হয় যদি সেগুলি হয় !TreeSAME (যদিও এটি পরিবর্তন করা যেতে পারে,
দেখুন -- স্পারস নীচে)।
মার্জ সবসময় অন্তর্ভুক্ত করা হয়. যাইহোক, তাদের অভিভাবক তালিকা পুনরায় লেখা হয়েছে: প্রতিটি বরাবর
অভিভাবক, নিজেদের অন্তর্ভুক্ত নয় এমন প্রতিশ্রুতি ছাঁটাই। এর ফলে
.-A---M---N---O---P---Q
/ / / /
আইবি/ডি/
\ / / /
`------------'
উপরে পুনর্লিখন ছাড়া --পূর্ণ-ইতিহাসের সাথে তুলনা করুন। উল্লেখ্য যে E কে কেটে ফেলা হয়েছিল কারণ
এটি ট্রিসেম, তবে P-এর মূল তালিকাটি E এর অভিভাবক I ধারণ করার জন্য পুনরায় লেখা হয়েছিল।
C এবং N, এবং X, Y এবং Q এর ক্ষেত্রেও একই ঘটনা ঘটেছে।
উপরের সেটিংস ছাড়াও, আপনি TREESAME অন্তর্ভুক্তকরণকে প্রভাবিত করে কিনা তা পরিবর্তন করতে পারেন:
-- ঘন
যে প্রতিশ্রুতিগুলি হাঁটা হয় সেগুলি অন্তর্ভুক্ত করা হয় যদি সেগুলি কোনও পিতামাতার কাছে ট্রিসম না হয়৷
--স্পর্স
হাঁটা হয় যে সব কমিট অন্তর্ভুক্ত করা হয়.
নোট করুন যে --পূর্ণ-ইতিহাস ছাড়া, এটি এখনও মার্জকে সহজ করে: যদি পিতামাতার একজন
ট্রিসেম হল, আমরা শুধুমাত্র সেই একটিকেই অনুসরণ করি, তাই একত্রিত হওয়ার অন্যান্য দিকগুলি কখনই নয়৷
হাঁটা
--সরলীকরণ-একত্রীকরণ
প্রথমত, একইভাবে একটি ইতিহাস গ্রাফ তৈরি করুন যেভাবে -- সম্পূর্ণ-ইতিহাস অভিভাবক পুনর্লিখনের সাথে
করে (উপরে দেখুন)।
তারপর প্রতিটি কমিট সিকে তার প্রতিস্থাপন সি'তে চূড়ান্ত ইতিহাস অনুযায়ী সরল করুন
নিম্নলিখিত নিয়ম:
· C' কে C সেট করুন।
· C' এর প্রতিটি প্যারেন্ট P এর সরলীকরণ P' দিয়ে প্রতিস্থাপন করুন। প্রক্রিয়ায়, ড্রপ
যে পিতামাতারা অন্য পিতামাতার পূর্বপুরুষ বা যারা রুট তারা ট্রিসমকে প্রতিশ্রুতি দেয়
একটি খালি গাছ, এবং সদৃশগুলি মুছে ফেলুন, তবে যত্ন নিন যেন সমস্ত পিতামাতাকে কখনই ফেলে না যায়
আমরা গাছপালা.
যদি এই অভিভাবক পুনর্লিখনের পরে, C' একটি রুট বা মার্জ কমিট হয় (শূন্য বা >1 আছে
পিতামাতা), একটি সীমানা প্রতিশ্রুতি, বা !ট্রিসম, এটি অবশিষ্ট থাকে। অন্যথায়, এটি প্রতিস্থাপিত হয়
তার একমাত্র পিতামাতার সাথে।
পিতামাতার সাথে --পূর্ণ-ইতিহাসের সাথে তুলনা করার মাধ্যমে এর প্রভাব সবচেয়ে ভাল দেখানো হয়
পুনর্লিখন উদাহরণে পরিণত হয়:
.-আমি না
//
আইবিডি
\ / /
`---------'
--পূর্ণ-ইতিহাসের তুলনায় N, P, এবং Q-এর প্রধান পার্থক্যগুলি নোট করুন:
· N-এর অভিভাবক তালিকা আমি সরিয়ে দিয়েছিলাম, কারণ এটি অন্য অভিভাবক M-এর পূর্বপুরুষ।
তবুও, N রয়ে গেছে কারণ এটি!
পি এর অভিভাবক তালিকা একইভাবে আমি সরিয়ে দিয়েছিলাম। P তারপর সম্পূর্ণরূপে সরানো হয়েছে, কারণ
এটির একজন অভিভাবক ছিলেন এবং এটি ট্রিসম।
· Q-এর অভিভাবক তালিকায় Y-কে X-এ সরলীকৃত করা হয়েছিল। X তারপর সরিয়ে দেওয়া হয়েছিল, কারণ এটি ছিল a
গাছের মূল Q তারপর সম্পূর্ণরূপে মুছে ফেলা হয়েছে, কারণ এটির একটি অভিভাবক ছিল এবং আছে৷
ট্রিসেম
অবশেষে, একটি পঞ্চম সরলীকরণ মোড উপলব্ধ আছে:
-- বংশ-পথ
"থেকে" এর মধ্যে সরাসরি পূর্বপুরুষের চেইনে প্রদর্শিত প্রতিশ্রুতি সীমাবদ্ধ করুন
এবং "to" প্রদত্ত কমিট পরিসরে কমিট করে। অর্থাৎ শুধুমাত্র প্রদর্শন কমিট যে হয়
"থেকে" কমিটের পূর্বপুরুষ এবং "থেকে" কমিটের বংশধর।
একটি উদাহরণ ব্যবহার ক্ষেত্রে, নিম্নলিখিত কমিট ইতিহাস বিবেচনা করুন:
D---E------F
/\\
B---C---G---H---I---J
/
A------K---------------L--M
একটি নিয়মিত ডি..এম কমিটের সেট গণনা করে যা M-এর পূর্বপুরুষ, কিন্তু বাদ দেয়
যারা D-এর পূর্বপুরুষ। ইতিহাসে কী ঘটেছে তা দেখতে এটি কার্যকর
D থেকে M-এর দিকে নিয়ে যাওয়া, এই অর্থে যে "M-এর কী আছে যা D-এ ছিল না"।
এই উদাহরণের ফলাফল A এবং B (এবং D নিজেই, এর
অবশ্যই)।
যখন আমরা খুঁজে বের করতে চাই যে M-এ কী কমিটগুলি প্রবর্তিত বাগ দ্বারা দূষিত
D এবং ফিক্সিং প্রয়োজন, যাইহোক, আমরা শুধুমাত্র উপসেট দেখতে চাই ডি..এম যে হয়
আসলে D-এর বংশধর, অর্থাৎ C এবং K বাদ দিয়ে। ঠিক এটাই
--ancestry-path বিকল্পটি করে। এ প্রয়োগ করা হয়েছে ডি..এম পরিসীমা, এর ফলে:
E------F
\\
জি---এইচ---আই---জে
\
এল--এম
--সিম্পলিফাই-বাই-ডেকোরেশন বিকল্প আপনাকে শুধুমাত্র বড় ছবি দেখতে দেয়
ইতিহাসের টপোলজি, ট্যাগ দ্বারা উল্লেখ করা হয়নি এমন প্রতিশ্রুতি বাদ দিয়ে। প্রতিশ্রুতি আছে
হিসাবে চিহ্নিত করা হয়েছে !TREESAME (অন্য কথায়, ইতিহাসের সরলীকরণের নিয়মের পরে রাখা হয়েছে
উপরে) যদি (1) তারা ট্যাগ দ্বারা উল্লেখ করা হয়, অথবা (2) তারা পাথের বিষয়বস্তু পরিবর্তন করে
কমান্ড লাইনে দেওয়া। অন্যান্য সমস্ত প্রতিশ্রুতি TREESAME হিসাবে চিহ্নিত করা হয়েছে (সাপেক্ষে
সরলীকৃত)।
দ্বিখণ্ডন সাহায্যকারী
--দ্বিখণ্ডিত করা
একটি কমিট অবজেক্টে আউটপুট সীমিত করুন যা অন্তর্ভুক্ত এবং এর মধ্যে প্রায় অর্ধেক
বর্জিত প্রতিশ্রুতি। লক্ষ্য করুন যে খারাপ দ্বিখণ্ডন ref refs/bisect/bad যোগ করা হয়েছে
অন্তর্ভুক্ত কমিট (যদি এটি বিদ্যমান থাকে) এবং ভাল দ্বিখণ্ডন refs refs/bisect/good-* হয়
বাদ দেওয়া কমিটগুলিতে যোগ করা হয়েছে (যদি তারা থাকে)। এইভাবে, অনুমান করুন যে কোনও রেফ নেই
refs/bisect/, যদি
$ git rev-list --bisect foo ^bar ^baz
আউটপুট মিডপয়েন্ট, দুটি কমান্ডের আউটপুট
$ git rev-তালিকা foo ^মিডপয়েন্ট
$ git rev-তালিকা মিডপয়েন্ট ^bar ^baz
মোটামুটি একই দৈর্ঘ্য হবে. পরিবর্তন খুঁজে বের করা যা একটি রিগ্রেশন প্রবর্তন করে
এইভাবে একটি বাইনারি অনুসন্ধানে হ্রাস করা হয়েছে: বার বার নতুন 'মিডপয়েন্ট' তৈরি করুন এবং পরীক্ষা করুন যতক্ষণ না
কমিট চেইন দৈর্ঘ্য এক. --first-parent-এর সাথে একত্রিত করা যাবে না।
--দ্বিভাগ-ভার্স
এটি --bisect হিসাবে একই গণনা করে, refs/bisect/-এ refs ব্যতীত ব্যবহৃত হয় না,
এবং এই আউটপুট পাঠ্যটি শেল দ্বারা মূল্যায়ন করার জন্য প্রস্তুত। এই লাইন হবে
ভেরিয়েবল bisect_rev-এ মিডপয়েন্ট রিভিশনের নাম বরাদ্দ করুন এবং প্রত্যাশিত
bisect_rev bisect_nr-তে পরীক্ষা করার পর পরীক্ষা করা কমিটের সংখ্যা, প্রত্যাশিত
bisect_rev যদি bisect_good থেকে ভাল হয় তাহলে পরীক্ষা করা হবে কমিটের সংখ্যা
bisect_rev খারাপ হলে প্রত্যাশিত সংখ্যা পরীক্ষা করা হবে
bisect_bad, এবং কমিটের সংখ্যা আমরা এই মুহূর্তে bisect_all-এ দ্বিখন্ডিত করছি।
--দ্বিভাগ-সমস্ত
এটি অন্তর্ভুক্ত এবং বাদ দেওয়া কমিটগুলির মধ্যে সমস্ত কমিট অবজেক্টকে আউটপুট করে, অর্ডার করা
অন্তর্ভুক্ত এবং বাদ দেওয়া কমিট থেকে তাদের দূরত্ব দ্বারা। Refs-এ Refs/bisect/ নয়
ব্যবহৃত তাদের থেকে সবচেয়ে দূরে প্রথম প্রদর্শিত হয়. (এটি শুধুমাত্র একটি দ্বারা প্রদর্শিত হয়
--দ্বিখণ্ডিত করা.)
এটি দরকারী কারণ এটি যখন আপনি চান পরীক্ষা করার জন্য একটি ভাল প্রতিশ্রুতি চয়ন করা সহজ করে তোলে
কোন কারণে তাদের কিছু পরীক্ষা করা এড়াতে (উদাহরণস্বরূপ তারা কম্পাইল নাও করতে পারে)।
এই বিকল্পটি --bisect-vars-এর সাথে ব্যবহার করা যেতে পারে, এই ক্ষেত্রে, সব সাজানোর পরে
কমিট অবজেক্ট, সেখানে একই টেক্সট থাকবে যেমন --bisect-vars একাই ব্যবহার করা হয়েছে।
সমর্পণ করা ক্রমানুসার
ডিফল্টরূপে, কমিটগুলি বিপরীত কালানুক্রমিক ক্রমে দেখানো হয়।
--তারিখ-অর্ডার
এর সমস্ত সন্তান দেখানোর আগে কোনও পিতামাতাকে দেখান না, তবে অন্যথায় দেখান কমিট ইন করুন৷
কমিট টাইমস্ট্যাম্প অর্ডার।
--লেখক-তারিখ-অর্ডার
এর সমস্ত সন্তান দেখানোর আগে কোনও পিতামাতাকে দেখান না, তবে অন্যথায় দেখান কমিট ইন করুন৷
লেখকের টাইমস্ট্যাম্প অর্ডার।
--টপো-অর্ডার
এর সমস্ত সন্তান দেখানোর আগে পিতামাতাকে দেখান না এবং প্রতিশ্রুতি দেখানো এড়িয়ে চলুন
ইতিহাসের একাধিক লাইন মিশ্রিত।
উদাহরণস্বরূপ, এই মত একটি প্রতিশ্রুতি ইতিহাসে:
---1----2---4----7
\\
৩----৫----৬----৮---
যেখানে সংখ্যাগুলি কমিট টাইমস্ট্যাম্প, গিট রেভ-লিস্ট এবং এর সাথে বন্ধুদের ক্রম নির্দেশ করে
--তারিখ-অর্ডার টাইমস্ট্যাম্পের ক্রম অনুসারে কমিটগুলি দেখায়: 8 7 6 5 4 3 2 1।
--টোপো-অর্ডারের সাথে, তারা দেখাবে 8 6 5 3 7 4 2 1 (বা 8 7 4 2 6 5 3 1); কিছু বয়স্ক
কমিটগুলিকে নতুনগুলির আগে দেখানো হয় যাতে দুটি থেকে কমিট দেখানো না হয়
সমান্তরাল উন্নয়ন ট্র্যাক একসঙ্গে মিশ্রিত.
-- বিপরীত
কমিটগুলিকে বিপরীত ক্রমে আউটপুট করুন। --walk-reflogs এর সাথে একত্রিত করা যাবে না।
উদ্দেশ্য ট্র্যাভেরসাল
এই বিকল্পগুলি বেশিরভাগ গিট সংগ্রহস্থলগুলির প্যাকিংয়ের জন্য লক্ষ্য করা হয়।
--বস্তু
তালিকাভুক্ত কমিট দ্বারা উল্লেখ করা যেকোন বস্তুর অবজেক্ট আইডি প্রিন্ট করুন। --অবজেক্ট foo
^bar এর অর্থ হল “আমাকে সমস্ত অবজেক্ট আইডি পাঠান যা আমার কাছে কমিট থাকলে ডাউনলোড করতে হবে
লক্ষ্য বার কিন্তু না foo বিন্যাস".
--অবজেক্ট-এজ
--অবজেক্টের অনুরূপ, তবে "-" এর সাথে উপসর্গযুক্ত বাদ দেওয়া কমিটগুলির আইডিও প্রিন্ট করুন
চরিত্র এই দ্বারা ব্যবহৃত হয় গিট-প্যাক-বস্তু(1) একটি "পাতলা" প্যাক তৈরি করতে, যা রেকর্ড করে
এই বাদ দেওয়া প্রতিশ্রুতিতে থাকা বস্তুর উপর ভিত্তি করে ডেল্টিফায়েড আকারে অবজেক্ট
নেটওয়ার্ক ট্রাফিক কমান।
--অবজেক্ট-এজ-আক্রমনাত্মক
--objects-edge-এর অনুরূপ, কিন্তু এটির খরচে বাদ দেওয়া কমিটগুলি খুঁজে বের করার জন্য এটি কঠিন চেষ্টা করে
বর্ধিত সময় এটি "পাতলা" প্যাকগুলি তৈরি করতে --objects-edge-এর পরিবর্তে ব্যবহার করা হয়
অগভীর সংগ্রহস্থল
--সূচীকৃত বস্তু
এমন ভান করুন যেন সূচক দ্বারা ব্যবহৃত সমস্ত গাছ এবং ব্লব কমান্ড লাইনে তালিকাভুক্ত।
মনে রাখবেন আপনি সম্ভবত --objects ব্যবহার করতে চান।
--আনপ্যাক করা
শুধুমাত্র --objects এর সাথে দরকারী; অবজেক্ট আইডি প্রিন্ট করুন যা প্যাকে নেই।
--না-হাঁটা[=(বাছাই করা|অবাছাই)]
শুধুমাত্র প্রদত্ত প্রতিশ্রুতি দেখান, কিন্তু তাদের পূর্বপুরুষদের অতিক্রম করবেন না। এর কোনো প্রভাব নেই
যদি একটি পরিসীমা নির্দিষ্ট করা হয়। যদি যুক্তিটি সাজানো না করা হয় তবে কমিটগুলি দেখানো হয়
তাদের কমান্ড লাইনে আদেশ দেওয়া হয়েছিল। অন্যথায় (যদি সাজানো হয় বা কোন যুক্তি ছিল না
প্রদত্ত), কমিটগুলি কমিট সময়ের দ্বারা বিপরীত কালানুক্রমিক ক্রমে দেখানো হয়। হতে পারে না
--গ্রাফের সাথে মিলিত।
-- হাঁটুন
পূর্ববর্তী --নো-ওয়াককে ওভাররাইড করে।
সমর্পণ করা বিন্যাস
এই বিকল্পগুলি ব্যবহার করে, git-rev-তালিকা(1) আরও বিশেষায়িত পরিবারের অনুরূপ কাজ করবে
কমিট লগ টুলস: git-log(২০১১), git-শো(1), এবং git-কি পরিবর্তিত(1)
--সুন্দর[= ], --ফরম্যাট=
একটি প্রদত্ত বিন্যাসে কমিট লগের বিষয়বস্তু প্রিটি-প্রিন্ট করুন, যেখানে হতে পারে
অন্যতম এক লাইন, সংক্ষিপ্ত, মধ্যম, সম্পূর্ণ, ধোপা, ইমেইল, কাঁচা, বিন্যাস: এবং
tformat:। কখন উপরের কোনটি নয়, এবং আছে % স্থানধারক এটা, এটা
কাজ করে যেন --সুন্দর=টিফরম্যাট: দেওয়া হয়.
প্রতিটি বিন্যাসের জন্য কিছু অতিরিক্ত বিবরণের জন্য "সুন্দর বিন্যাস" বিভাগটি দেখুন। কখন
= অংশ বাদ দেওয়া হয়, এটি ডিফল্ট মধ্যম.
দ্রষ্টব্য: আপনি সংগ্রহস্থল কনফিগারেশনে ডিফল্ট সুন্দর বিন্যাস নির্দিষ্ট করতে পারেন (দেখুন
git-config(1))।
--সংক্ষেপে-কমিট
সম্পূর্ণ 40-বাইট হেক্সাডেসিমেল কমিট অবজেক্টের নাম দেখানোর পরিবর্তে শুধুমাত্র একটি দেখান
আংশিক উপসর্গ। সংখ্যার অ-ডিফল্ট সংখ্যা "--abbrev= দিয়ে নির্দিষ্ট করা যেতে পারে "
(যা ডিফ আউটপুটকেও পরিবর্তন করে, যদি এটি প্রদর্শিত হয়)।
এটি ব্যবহার করা লোকেদের জন্য "--pretty=oneline" কে অনেক বেশি পাঠযোগ্য করে তুলতে হবে
80-কলাম টার্মিনাল।
--নো-সংক্ষিপ্ত-কমিট
সম্পূর্ণ 40-বাইট হেক্সাডেসিমেল কমিট অবজেক্টের নাম দেখান। এই --abbrev-কমিট এবং
যে বিকল্পগুলি এটিকে বোঝায় যেমন "--oneline"। এটি ওভাররাইড করে
log.abbrevCommit পরিবর্তনশীল।
--এক লাইন
এটি একসাথে ব্যবহৃত "--pretty=oneline --abbrev-commit" এর জন্য একটি সংক্ষিপ্ত বিবরণ।
--এনকোডিং=
কমিট অবজেক্টগুলি তাদের এনকোডিংয়ে লগ বার্তার জন্য ব্যবহৃত এনকোডিং রেকর্ড করে
শিরোনাম; এই বিকল্পটি কমিট লগ বার্তা পুনরায় কোড করার জন্য কমান্ডকে বলতে ব্যবহার করা যেতে পারে
ব্যবহারকারীর পছন্দের এনকোডিং-এ। নন প্লাম্বিং কমান্ডের জন্য এটি ডিফল্ট
UTF-8। মনে রাখবেন যে যদি একটি বস্তু X-এ এনকোড করা দাবি করে এবং আমরা X-তে আউটপুট করছি, আমরা
বস্তুটিকে শব্দার্থে আউটপুট করবে; এর মানে হল যে আসল সিকোয়েন্স অবৈধ
কমিট আউটপুটে অনুলিপি করা যেতে পারে।
--স্বাক্ষর দেখান
gpg --verify-এ স্বাক্ষর পাস করে স্বাক্ষরিত কমিট অবজেক্টের বৈধতা পরীক্ষা করুন
এবং আউটপুট দেখান।
--আত্মীয়-তারিখ
--date=relative এর সমার্থক।
--তারিখ=
শুধুমাত্র মানব-পাঠযোগ্য বিন্যাসে দেখানো তারিখগুলির জন্য কার্যকর হয়, যেমন ব্যবহার করার সময়
--সুন্দর log.date কনফিগার ভেরিয়েবল log কমান্ডের --date-এর জন্য একটি ডিফল্ট মান সেট করে
বিকল্প ডিফল্টরূপে, তারিখগুলি আসল টাইম জোনে দেখানো হয় (হয় কমিটরের বা
লেখকের)। যদি -local বিন্যাসে যুক্ত করা হয় (যেমন, iso-local), ব্যবহারকারীর স্থানীয়
পরিবর্তে সময় অঞ্চল ব্যবহার করা হয়।
--date=relative বর্তমান সময়ের সাথে সম্পর্কিত তারিখ দেখায়, যেমন "2 ঘন্টা আগে"। দ্য
-স্থানীয় বিকল্প --raw বা --relative এর সাথে ব্যবহার করা যাবে না।
--date=local হল --date=default-local এর একটি উপনাম।
--date=iso (বা --date=iso8601) ISO 8601-এর মতো বিন্যাসে টাইমস্ট্যাম্প দেখায়। দ্য
কঠোর ISO 8601 বিন্যাসের পার্থক্য হল:
T তারিখ/সময় বিভাজনের পরিবর্তে একটি স্থান
সময় এবং সময় অঞ্চলের মধ্যে একটি স্থান
সময় অঞ্চলের ঘন্টা এবং মিনিটের মধ্যে কোন কোলন নেই
--date=iso-strict (বা --date=iso8601-strict) কঠোর ISO 8601-এ টাইমস্ট্যাম্প দেখায়
বিন্যাস।
--date=rfc (বা --date=rfc2822) RFC 2822 ফর্ম্যাটে টাইমস্ট্যাম্প দেখায়, প্রায়শই পাওয়া যায়
ইমেইল বার্তা।
--date=short শুধুমাত্র তারিখ দেখায়, কিন্তু সময় নয়, YYYY-MM-DD ফর্ম্যাটে।
--date=raw অভ্যন্তরীণ কাঁচা গিট বিন্যাস %s %z বিন্যাসে তারিখ দেখায়।
--date=format:... আপনার সিস্টেম strftime... ফরম্যাট ফিড করে। --date=format:%c ব্যবহার করুন
আপনার সিস্টেম লোকেলের পছন্দের বিন্যাসে তারিখ দেখাতে। এর জন্য strftime ম্যানুয়াল দেখুন
বিন্যাস স্থানধারক একটি সম্পূর্ণ তালিকা. -local ব্যবহার করার সময়, সঠিক সিনট্যাক্স হয়
--তারিখ=ফরম্যাট-স্থানীয়:...
--date=default হল ডিফল্ট বিন্যাস, এবং --date=rfc2822 এর মত, কয়েকটি সহ
ব্যতিক্রম:
· সপ্তাহের দিনের পরে কোন কমা নেই
স্থানীয় সময় অঞ্চল ব্যবহার করা হলে সময় অঞ্চলটি বাদ দেওয়া হয়
-- শিরোনাম
কমিটের বিষয়বস্তু কাঁচা-ফরম্যাটে প্রিন্ট করুন; প্রতিটি রেকর্ড একটি NUL দিয়ে আলাদা করা হয়
অক্ষর।
-- পিতামাতা
কমিটের পিতামাতাও প্রিন্ট করুন ("কমিট প্যারেন্ট..." আকারে)। এছাড়াও সক্ষম করে
পিতামাতার পুনর্লিখন, দেখুন ইতিহাস সরলীকরণ নিচে.
-- বাচ্চারা
কমিটের বাচ্চাদেরও প্রিন্ট করুন ("কমিট চাইল্ড..." আকারে)। এছাড়াও সক্ষম করে
পিতামাতার পুনর্লিখন, দেখুন ইতিহাস সরলীকরণ নিচে.
--টাইমস্ট্যাম্প
কাঁচা কমিট টাইমস্ট্যাম্প প্রিন্ট করুন।
--বাম ডান
একটি প্রতিসম পার্থক্যের কোন দিক থেকে একটি কমিট পৌঁছানো যায় তা চিহ্নিত করুন। বাম থেকে প্রতিশ্রুতি
পাশের উপসর্গ < এর সাথে এবং ডান থেকে > এর সাথে থাকে। যদি --সীমার সাথে মিলিত হয়,
এই কমিট-এর সাথে প্রিফিক্স করা হয়।
উদাহরণস্বরূপ, যদি আপনার এই টপোলজি থাকে:
y---b---b শাখা বি
/\/
/।
/ / \
o---x---a---একটি শাখা ক
আপনি এই মত একটি আউটপুট পাবেন:
$ git rev-list --left-right --boundary --pretty=oneline A...B
> বিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিবিভাগে 3য় খ
>বিবিবিবিবিবিবি... ২য় খ
<আআআআআআ... ৩য় এ
<আআআআআ... ২য় এ
-yyyyyy... 1ম খ
-xx... ১ম এ
--চিত্রলেখ
বাম দিকে কমিট ইতিহাসের একটি পাঠ্য-ভিত্তিক গ্রাফিকাল উপস্থাপনা আঁকুন
আউটপুট এর। এর ফলে কমিটের মধ্যে ক্রমানুসারে অতিরিক্ত লাইন মুদ্রিত হতে পারে
গ্রাফ ইতিহাস সঠিকভাবে আঁকার জন্য। --না-হাঁটার সাথে মিলিত হতে পারে না।
এটি পিতামাতার পুনর্লিখন সক্ষম করে, দেখুন ইতিহাস সরলীকরণ নিচে.
এটি ডিফল্টরূপে --topo-order বিকল্পকে বোঝায়, কিন্তু --date-order বিকল্পটিও হতে পারে
নির্দিষ্ট করা।
--শো-লিনিয়ার-ব্রেক[= ]
যখন --গ্রাফ ব্যবহার করা হয় না, সমস্ত ইতিহাস শাখা সমতল করা হয় যা এটিকে কঠিন করে তুলতে পারে
দেখুন যে দুটি পরপর কমিট একটি রৈখিক শাখার অন্তর্গত নয়। এই বিকল্প
যে ক্ষেত্রে তাদের মধ্যে একটি বাধা রাখে. যদি নির্দিষ্ট করা হয়, এটা হয়
স্ট্রিং যা ডিফল্টের পরিবর্তে দেখানো হবে।
--গণনা
কতগুলি কমিট তালিকাভুক্ত করা হবে তা উল্লেখ করে একটি সংখ্যা প্রিন্ট করুন এবং অন্যান্য সমস্ত দমন করুন
আউটপুট যখন --left-right-এর সাথে একত্রে ব্যবহার করা হয়, তার পরিবর্তে বাম এবং এর জন্য গণনা প্রিন্ট করুন
ডান কমিট, একটি ট্যাব দ্বারা পৃথক করা হয়. -চেরি-মার্কের সাথে একসাথে ব্যবহার করা হলে, প্যাচ বাদ দিন
এই গণনা থেকে সমতুল্য কমিট এবং সমতুল্য কমিটের জন্য গণনা প্রিন্ট করুন
একটি ট্যাব দ্বারা পৃথক।
চমত্কার ফরম্যাট
যদি কমিট একটি মার্জ হয়, এবং যদি প্রিটি-ফরম্যাট না হয় এক লাইন, ইমেইল or কাঁচা, একটি
এর আগে অতিরিক্ত লাইন ঢোকানো হয় লেখক: লাইন এই লাইনটি "একত্রীকরণ: " দিয়ে শুরু হয় এবং
পৈতৃক কমিটের sha1s মুদ্রিত হয়, স্পেস দ্বারা পৃথক করা হয়। উল্লেখ্য যে তালিকাভুক্ত
কমিট অগত্যা তালিকা হতে পারে না সরাসরি আপনার সীমিত থাকলে অভিভাবক প্রতিশ্রুতি দেন
ইতিহাস সম্পর্কে আপনার দৃষ্টিভঙ্গি: উদাহরণস্বরূপ, যদি আপনি শুধুমাত্র a এর সাথে সম্পর্কিত পরিবর্তনগুলিতে আগ্রহী হন
নির্দিষ্ট ডিরেক্টরি বা ফাইল।
অনেকগুলি অন্তর্নির্মিত বিন্যাস রয়েছে এবং আপনি একটি সেট করে অতিরিক্ত বিন্যাস সংজ্ঞায়িত করতে পারেন
সুন্দর অন্য ফরম্যাট নামের config বিকল্প, অথবা a বিন্যাস: স্ট্রিং, হিসাবে
নীচে বর্ণিত (দেখুন git-config(1))। এখানে বিল্ট-ইন ফরম্যাটের বিশদ বিবরণ রয়েছে:
· এক লাইন
এটি যতটা সম্ভব কমপ্যাক্ট হওয়ার জন্য ডিজাইন করা হয়েছে।
· সংক্ষিপ্ত
কমিট
লেখক:
· মধ্যম
কমিট
লেখক:
তারিখ:
· সম্পূর্ণ
কমিট
লেখক:
প্রতিশ্রুতি:
· ধোপা
কমিট
লেখক:
লেখক তারিখ:
প্রতিশ্রুতি:
কমিট ডেট:
· ইমেইল
থেকে
থেকে:
তারিখ:
বিষয়: [প্যাচ]
· কাঁচা
সার্জারির কাঁচা ফরম্যাট কমিট অবজেক্টে সংরক্ষিত সম্পূর্ণ কমিট ঠিক দেখায়।
উল্লেখযোগ্যভাবে, --abbrev বা যাই হোক না কেন, SHA-1গুলি সম্পূর্ণরূপে প্রদর্শিত হয়
--no-abbrev ব্যবহার করা হয়, এবং বাবা তথ্য প্রকৃত পিতামাতার প্রতিশ্রুতি দেখান, ছাড়া
একাউন্টে গ্রাফটস বা ইতিহাস সরলীকরণ গ্রহণ। মনে রাখবেন যে এই বিন্যাস প্রভাবিত করে
যেভাবে কমিট দেখানো হয়, কিন্তু যেভাবে ডিফ দেখানো হয় তা নয় যেমন গিট লগ দিয়ে
--কাঁচা। একটি কাঁচা পার্থক্য বিন্যাসে সম্পূর্ণ বস্তুর নাম পেতে, --no-abbrev ব্যবহার করুন।
· বিন্যাস:
সার্জারির বিন্যাস: বিন্যাস আপনাকে কোন তথ্য প্রদর্শন করতে চান তা নির্দিষ্ট করার অনুমতি দেয়।
এটি প্রিন্টএফ ফরম্যাটের মতো কিছুটা কাজ করে, উল্লেখযোগ্য ব্যতিক্রম যা আপনি একটি পান
সঙ্গে newline %n পরিবর্তে \n.
যেমন, বিন্যাস: "The লেখক of %h ছিল %একটি, %ar%n খেতাব ছিল >>%s<<%n" দেখাবে
এটার মতো কিছু:
fe6e0ee এর লেখক ছিলেন জুনিয় সি হামানো, 23 ঘন্টা আগে
শিরোনাম ছিল >>t4119: test autocomputing -p ঐতিহ্যগত পার্থক্য ইনপুটের জন্য।<
স্থানধারক হল:
· %H: হ্যাশ কমিট
· %h: সংক্ষেপে কমিট হ্যাশ
· %T: গাছ হ্যাশ
· %t: সংক্ষিপ্ত ট্রি হ্যাশ
· %P: অভিভাবক হ্যাশ
· %p: সংক্ষিপ্ত প্যারেন্ট হ্যাশ
· %একটি: লেখকের নাম
· %একটি: লেখকের নাম (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা git- দোষ(1))
· %a: লেখক ইমেল
· %aE: লেখক ইমেল (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা git- দোষ(1))
· %বিজ্ঞাপন: লেখক তারিখ (ফরম্যাট সম্মান -- তারিখ = বিকল্প)
· %বিজ্ঞাপন: লেখক তারিখ, RFC2822 শৈলী
· %আর: লেখক তারিখ, আপেক্ষিক
· %এ: লেখকের তারিখ, ইউনিক্স টাইমস্ট্যাম্প
· %ai: লেখকের তারিখ, ISO 8601-এর মতো বিন্যাস
· %aI: লেখকের তারিখ, কঠোর ISO 8601 বিন্যাস
· %cn: কমিটরের নাম
· %cN: কমিটরের নাম (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা git- দোষ(1))
· %ce: কমিটর ইমেইল
· %cE: কমিটর ইমেইল (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা git- দোষ(1))
· %cd: প্রতিশ্রুতিবদ্ধ তারিখ (ফরম্যাট সম্মান -- তারিখ = বিকল্প)
· %cD: প্রতিশ্রুতিবদ্ধ তারিখ, RFC2822 শৈলী
· % কোটি: কমিটরের তারিখ, আপেক্ষিক
· %ct: কমিটরের তারিখ, ইউনিক্স টাইমস্ট্যাম্প
· %ci: কমিটারের তারিখ, ISO 8601-এর মতো বিন্যাস
· %cI: প্রতিশ্রুতিবদ্ধ তারিখ, কঠোর ISO 8601 বিন্যাস
· %d: ref নাম, যেমন --decorate অপশন git-log(1)
· %D: রেফ নাম "(", ")" মোড়ানো ছাড়া।
· %e: এনকোডিং
· %s: বিষয়
· %f: স্যানিটাইজড সাবজেক্ট লাইন, ফাইল নামের জন্য উপযুক্ত
· %b: শরীর
· %B: কাঁচা শরীর (আবড়ানো বিষয় এবং শরীর)
· % GG: একটি স্বাক্ষরিত প্রতিশ্রুতির জন্য GPG থেকে কাঁচা যাচাইকরণ বার্তা৷
· %G?: একটি ভাল স্বাক্ষরের জন্য "G", একটি খারাপ স্বাক্ষরের জন্য "B", একটি ভাল স্বাক্ষরের জন্য "U" দেখান,
অবিশ্বস্ত স্বাক্ষর এবং স্বাক্ষরের জন্য "N"
· % জিএস: একটি স্বাক্ষরিত প্রতিশ্রুতির জন্য স্বাক্ষরকারীর নাম দেখান
· % জিকে: একটি স্বাক্ষরিত প্রতিশ্রুতি স্বাক্ষর করতে ব্যবহৃত কীটি দেখান
· %gD: reflog নির্বাচক, যেমন, refs/stash@{1}
· %gd: সংক্ষিপ্ত রিফ্লগ নির্বাচক, যেমন, stash@{1}
· %gn: reflog পরিচয় নাম
· %gN: reflog পরিচয় নাম (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা গিট-
দোষ(1))
· %ge: reflog পরিচয় ইমেল
· %gE: reflog পরিচয় ইমেল (সম্মান করে .mailmap, দেখুন গিট-শর্টলগ(এক্সএনএমএক্স) বা গিট-
দোষ(1))
· %gs: reflog বিষয়
· ক্রেড: লাল রঙে পরিবর্তন করুন
· %সিগ্রিন: সবুজ রঙে পরিবর্তন করুন
· % সিব্লু: নীল রঙে পরিবর্তন করুন
· ক্রিসেট: রঙ রিসেট করুন
· %C(...): কালার স্পেসিফিকেশন, যেমন color.branch.* কনফিগার অপশনে বর্ণিত হয়েছে; যোগ করা
স্বয়ংক্রিয়, শুরুতে রঙ নির্গত হবে শুধুমাত্র যখন লগ আউটপুটের জন্য রঙ সক্রিয় করা হবে
(color.diff, color.ui, বা --color দ্বারা, এবং এর স্বয়ংক্রিয় সেটিংসকে সম্মান করে
আমরা একটি টার্মিনালে যাচ্ছি যদি পূর্ববর্তী)। অটো একা (অর্থাৎ %C(অটো)) চালু হবে
পরের স্থানধারকগুলিতে স্বয়ংক্রিয় রঙ করা হবে যতক্ষণ না রঙটি আবার সুইচ করা হয়।
· %m: বাম, ডান বা সীমানা চিহ্ন
· %n: নতুন লাইন
· %%: একটি কাঁচা %
· %x00: একটি হেক্স কোড থেকে একটি বাইট প্রিন্ট করুন
· %w([ [, [, ]]]): সুইচ লাইন মোড়ানো, -w বিকল্পের মত গিট-
শর্টলগ(1).
· %<( [, trunc|ltrunc|mtrunc]): পরবর্তী স্থানধারককে কমপক্ষে N কলাম নিতে দিন,
প্রয়োজনে ডানদিকে প্যাডিং স্পেস। ঐচ্ছিকভাবে শুরুতে ছেঁটে দিন
(ltrunc), মধ্যম (mtrunc) বা শেষ (trunc) যদি আউটপুট N-এর চেয়ে দীর্ঘ হয়
কলাম. মনে রাখবেন যে ছাঁটাই শুধুমাত্র N >= 2 এর সাথে সঠিকভাবে কাজ করে।
· %<|( ): পরবর্তী স্থানধারককে অন্তত Nth কলাম, প্যাডিং পর্যন্ত নিতে হবে
প্রয়োজনে ডানদিকে স্পেস
· %>( ), %>|( ): অনুরূপ, একই, সমতুল্য %<( ), %<|( ) যথাক্রমে, কিন্তু প্যাডিং স্পেস
বাম দিকে
· %>>( ), %>>|( ): অনুরূপ, একই, সমতুল্য %>( ), %>|( ) যথাক্রমে, যে ছাড়া যদি
পরবর্তী স্থানধারক প্রদত্ত থেকে বেশি স্পেস নেয় এবং এর বাম দিকে স্পেস রয়েছে,
ঐ স্থানগুলি ব্যবহার করুন
· %><( ), %><|( ): অনুরূপ, একই, সমতুল্য % <( ), %<|( ) যথাক্রমে, কিন্তু প্যাডিং উভয়
পার্শ্ব (অর্থাৎ পাঠ্য কেন্দ্রীভূত)
বিঃদ্রঃ
কিছু স্থানধারক রিভিশন ট্রাভার্সাল ইঞ্জিনে দেওয়া অন্যান্য বিকল্পের উপর নির্ভর করতে পারে।
উদাহরণ স্বরূপ, %g* reflog অপশন একটি খালি স্ট্রিং সন্নিবেশ করবে যদি না আমরা না থাকি
reflog এন্ট্রি ট্রাভার্সিং (যেমন, git log -g দ্বারা)। %d এবং %D স্থানধারক ব্যবহার করবে
"সংক্ষিপ্ত" সাজসজ্জা বিন্যাস যদি --decorate আগে থেকেই কমান্ডে দেওয়া না থাকে
লাইন।
যদি আপনি পরে একটি + (প্লাস চিহ্ন) যোগ করেন % একটি স্থানধারকের, একটি লাইন-ফিড অবিলম্বে ঢোকানো হয়
সম্প্রসারণের আগে যদি এবং শুধুমাত্র যদি স্থানধারক একটি অ-খালি স্ট্রিং প্রসারিত হয়।
যদি আপনি একটি যোগ করেন - (মাইনাস চিহ্ন) পরে % একটি স্থানধারক, লাইন-ফিড যা অবিলম্বে আগে
স্থানধারক একটি খালি স্ট্রিং প্রসারিত হলে এবং শুধুমাত্র যদি বিস্তার মুছে ফেলা হয়।
যদি আপনি একটি `` (স্পেস) এর পরে যোগ করেন % একটি স্থানধারক, একটি স্থান অবিলম্বে আগে ঢোকানো হয়
বিস্তৃতি যদি এবং শুধুমাত্র যদি স্থানধারক একটি অ-খালি স্ট্রিং প্রসারিত হয়।
· tformat:
সার্জারির tformat: বিন্যাস ঠিক মত কাজ করে বিন্যাস:, তা ছাড়া এটি "টার্মিনেটর" প্রদান করে
"বিভাজক" শব্দার্থের পরিবর্তে শব্দার্থবিদ্যা। অন্য কথায়, প্রতিটি কমিট আছে
বার্তা টার্মিনেটর অক্ষর (সাধারণত একটি নতুন লাইন) যুক্ত করা হয়, একটি বিভাজকের পরিবর্তে
এন্ট্রি মধ্যে স্থাপন করা হয়. এর মানে হল যে একটি একক লাইন বিন্যাসের চূড়ান্ত এন্ট্রি হবে
একটি নতুন লাইন দিয়ে সঠিকভাবে সমাপ্ত করা হবে, ঠিক যেমনটি "ওয়ানলাইন" বিন্যাস করে। জন্য
উদাহরণস্বরূপ:
$ git log -2 --pretty=format:%h 4da45bef \
| perl -pe '$_ .=" -- না NEWLINE\n" যদি না /\n/'
4da45be
7134973 -- না NEWLINE৷
$ git log -2 --pretty=tformat:%h 4da45bef \
| perl -pe '$_ .=" -- না NEWLINE\n" যদি না /\n/'
4da45be
7134973
উপরন্তু, কোনো অচেনা স্ট্রিং যেটিতে একটি % আছে তা ব্যাখ্যা করা হয় যেন এটি আছে
tformat: এর সামনে। উদাহরণস্বরূপ, এই দুটি সমতুল্য:
$ git log -2 --pretty=tformat:%h 4da45bef
$ git log -2 --pretty=%h 4da45bef
এলেবেলে
অংশ ফালতু বা এলেবেলে লোক(1) স্যুট
onworks.net পরিষেবা ব্যবহার করে অনলাইনে git-rev-list ব্যবহার করুন