এই তথ্যের সাথে আমি কীভাবে গিট লগ আউটপুট প্রদর্শন করতে পারি:
* author
* commit date
* change
আমি এটি লগ এন্ট্রি প্রতি এক লাইনে সংকুচিত করতে চান। এর জন্য স্বল্পতম ফর্ম্যাটটি কী?
(চেষ্টা করেছেন --format=oneline
কিন্তু তারিখটি দেখায় না)
এই তথ্যের সাথে আমি কীভাবে গিট লগ আউটপুট প্রদর্শন করতে পারি:
* author
* commit date
* change
আমি এটি লগ এন্ট্রি প্রতি এক লাইনে সংকুচিত করতে চান। এর জন্য স্বল্পতম ফর্ম্যাটটি কী?
(চেষ্টা করেছেন --format=oneline
কিন্তু তারিখটি দেখায় না)
উত্তর:
git log --pretty=format:"%h%x09%an%x09%ad%x09%s"
কাজটি করেছে এই ফলাফলগুলি:
fbc3503 mads Thu Dec 4 07:43:27 2008 +0000 show mobile if phone is null...
ec36490 jesper Wed Nov 26 05:41:37 2008 +0000 Cleanup after [942]: Using timezon
ae62afd tobias Tue Nov 25 21:42:55 2008 +0000 Fixed #67 by adding time zone supp
164be7e mads Tue Nov 25 19:56:43 2008 +0000 fixed tests, and a 'unending appoi
93f1526 jesper Tue Nov 25 09:45:56 2008 +0000 adding time.ZONE.now as time zone
2f0f8c1 tobias Tue Nov 25 03:07:02 2008 +0000 Timezone configured in environment
a33c1dc jesper Tue Nov 25 01:26:18 2008 +0000 updated to most recent will_pagina
স্ট্যাকওভারফ্লো প্রশ্ন দ্বারা অনুপ্রাণিত : "গিট লগ আউটপুট যেমন এসভিএন এলএস-ভি" , আমি জানতে পেরেছিলাম যে আমার প্রয়োজনীয় প্যারামগুলি যুক্ত করতে পারি।
তারিখটি ছোট করার জন্য (সময় দেখাচ্ছে না) --date=short
আপনি যদি কৌতূহলী হন তবে বিভিন্ন বিকল্পগুলি কী ছিল:
%h
= সংক্ষেপিত কমিট হ্যাশ
%x09
= ট্যাব (কোড 9 এর অক্ষর)
%an
= লেখকের নাম
%ad
= লেখকের তারিখ (বিন্যাস সম্মান - তারিখ = বিকল্প)
%s
= কার্নেল.org/pub/software/scm
থেকে /git/docs/git-log.html ( প্রাকৃতিক ফর্ম্যাট বিভাগ) বিবেক এর মন্তব্য দ্বারা।
date=short
সিডুএন ২০০১ এর মতো অন্য উত্তরের পরামর্শ মতো যুক্ত করাও দরকারী
git log --pretty=format:"%h %ad%x09%an%x09%s" --date=short
git log --pretty=format:'%C(yellow)%h %Cred%ad %Cblue%an%Cgreen%d %Creset%s' --date=short
alias glop="git log --pretty=format:'%C(yellow)%h|%Cred%ad|%Cblue%an|%Cgreen%d %Creset%s' --date=short | column -ts'|' | less -r"
আমি এই দুটি .Gitconfig সেটিংস ব্যবহার:
[log]
date = relative
[format]
pretty = format:%h %Cblue%ad%Creset %ae %Cgreen%s%Creset
% বিজ্ঞাপনটি লেখকের তারিখ, যা .Gitconfig- --date
এ [লগ] স্তরে নির্দিষ্ট বিকল্পটি দ্বারা উপেক্ষা করা যেতে পারে । আমি আপেক্ষিক তারিখটি পছন্দ করি কারণ এটি কখন স্টাফ করা হয়েছিল তা তাত্ক্ষণিক অনুভূতি দেয়। আউটপুট এর মতো দেখাচ্ছে:
6c3e1a2 2 hours ago you@me.com lsof is a dependency now.
0754f18 11 hours ago you@me.com Properly unmount, so detaching works.
336a3ac 13 hours ago you@me.com Show ami registration command if auto register fails
be2ad45 17 hours ago you@me.com Fixes #6. Sao Paolo region is included as well.
5aed68e 17 hours ago you@me.com Shorten while loops
এটি অবশ্যই রঙিন, সুতরাং লগ লাইনের বিভিন্ন অংশে পার্থক্য করা সহজ। git log
[ফর্ম্যাট] বিভাগের কারণে টাইপ করার সময় এটি ডিফল্ট is
২০১৪ আপডেট: যেহেতু গিট এখন প্যাডিং সমর্থন করে আমি উপরের সংস্করণে একটি সুন্দর সংশোধন করেছি:
pretty = format:%C(yellow)%h %Cblue%>(12)%ad %Cgreen%<(7)%aN%Cred%d %Creset%s
এই ডানটি আপেক্ষিক তারিখগুলি সারিবদ্ধ করে এবং বামগুলি অঙ্গীকারের নামগুলি সারিবদ্ধ করে, যার অর্থ আপনি কলামের মতো চেহারা পান যা চোখে সহজ।
স্ক্রিনশট২০১ UP আপডেট: জিপিজি কমিট স্বাক্ষর করার বিষয়টি হয়ে ওঠার পরে, আমি ভেবেছিলাম যে আমি এই পোস্টটি এমন একটি সংস্করণ দিয়ে আপডেট করব যাতে স্বাক্ষর যাচাইকরণ অন্তর্ভুক্ত থাকে (স্ক্রিনশটে এটি কমেন্টের ঠিক পরে ম্যাজেন্টা চিঠি)। পতাকার একটি সংক্ষিপ্ত ব্যাখ্যা:
% G ?: ভাল (বৈধ) স্বাক্ষরের জন্য "G", খারাপ স্বাক্ষরের জন্য "B", অজানা বৈধতা সহ একটি ভাল স্বাক্ষরের জন্য "U" এবং কোনও স্বাক্ষরের জন্য "N" দেখান
অন্যান্য পরিবর্তনগুলির মধ্যে রয়েছে:
git log -g
এখন রিফ্লগ নির্বাচনকারী রয়েছে।3 years, 4..
)%<(7,trunc)
বা কমিটরের নামগুলি সংক্ষিপ্ত করতে গিট। মেইলম্যাপ বৈশিষ্ট্যটি পরীক্ষা করে দেখুন )কনফিগারেশনটি এখানে:
pretty = format:%C(auto,yellow)%h%C(auto,magenta)% G? %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(7,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D
সমস্ত কলামের সারিবদ্ধকরণ এখন কিছু (আশাবাদী) অকেজো অক্ষরের ব্যয়ে অনেক ভাল সংরক্ষণ করা হয়েছে। আপনার যদি কোনও উন্নতি হয় তবে নির্দ্বিধায় এডিট করুন, আমি কোনও বার্তা স্বাক্ষরিত কিনা তার উপর নির্ভর করে বার্তাটির রঙিন করতে চাই তবে এটি এটিএম সম্ভব বলে মনে হয় না।
স্ক্রিনশটtig
উত্তরটি কোনও প্রয়োজনীয় কনফিগারেশনের সাথে ইন্টারঅ্যাক্টিভিটি দেয়, তবে এটি একটি উজ্জ্বল - এটি স্ট্যান্ডার্ড 'গিট লগ' কমান্ডটি ব্যবহার করে অনুরোধ করা এক-লাইন আউটপুট দেয় (বুট থেকে রঙ সহ) দেয়। খুব সুন্দর.
>
<
আর চিহ্নগুলি পাই না। %m
বিন্যাসে যোগ করার চেষ্টা করা হয়েছে , তবে তারপরেও >
প্রতিবার প্রদর্শিত হয়, এমনকি কোনও সাধারণের জন্যও git log
। বিন্যাসগুলির সাথে চিহ্নগুলি কীভাবে আচরণ করা যায় তা কোনও ক্লু?
--oneline
কেবলমাত্র একটি উপনাম --pretty=oneline
। format.pretty
এটি ডিফল্ট চমত্কার বিন্যাস, তবে format.oneline
আফিকাকে ওভাররাইড করার কোনও উপায় নেই । আমি যা করব তা হ'ল কনফিগের pretty = shortlog
লাইনটি বাদ দেওয়া এবং তারপরে দৌড়ানোর জন্য একটি উপাধি তৈরি করা git log --pretty=shortlog
।
git log --pretty=format:"%H %an %ad"
--date=
একটি তারিখ বিন্যাস সেট করতে ব্যবহার করুন
git log --pretty=format:"%H %an %ad" --date=short
এটিকে নির্দ্বিধায় ব্যবহার করুন:
git log --pretty="%C(Yellow)%h %C(reset)%ad (%C(Green)%cr%C(reset))%x09 %C(Cyan)%an: %C(reset)%s" -7
-7
শুধুমাত্র শেষ 7 টি এন্ট্রিগুলি দেখানোর জন্য শেষে নোট করুন
দেখুন:
--date=short
এটি সংক্ষিপ্ত করতে যোগ করা যেতে পারে।
git log
সর্বদা বর্তমানে চেক করা শাখার ইতিহাস দেখায়।
%d
"রেফ নামগুলি" পুনঃস্থাপন করতে যুক্ত করুন (HEAD -> master)
।
reset
পরিবর্তে কেন ব্যবহার করবেন auto
?
টিগ ব্যবহারের সম্ভাব্য বিকল্প লগ কমান্ড tig , প্রধান উন্মুক্ত উত্স * নিক্স বিতরণে উপলব্ধ।
উপর ডেবিয়ান বা উবুন্টু ইনস্টল করার এবং নিম্নরূপ চলমান চেষ্টা করুন:
$ sudo apt-get install tig
(টিগ ইনস্টল করা হয়)
$ tig
(লগটি নীচে পেজারে প্রদর্শিত হবে, বর্তমান কমিটের হ্যাশটি নীচে প্রদর্শিত হবে)
2010-03-17 01:07 ndesigner changes to sponsors list
2010-03-17 00:19 rcoder Raise 404 when an invalid year is specified.
2010-03-17 00:06 rcoder Sponsors page now shows sponsors' level.
-------------------------- skip some lines ---------------------------------
[main] 531f35e925f53adeb2146dcfc9c6a6ef24e93619 - commit 1 of 32 (100%)
যেহেতু মার্কডাউন পাঠ্য রঙ সমর্থন করে না, কল্পনা করুন: কলাম 1: নীল; কলাম 2: সবুজ; কলাম 3: ডিফল্ট পাঠ্যের রঙ। শেষ লাইন, হাইলাইট। হিট প্রশ্ন বা কুই প্রস্থান।
tig
রাগযুক্ত প্রান্তগুলি ব্যতীত কলামগুলি ন্যায্য করে , যা কোনও এসিআইআই ট্যাব (% x09) গ্যারান্টি দেয় না।
একটি স্বল্প তারিখের বিন্যাসের জন্য হিট মূলধন ডি (দ্রষ্টব্য: ছোট হাতের ডি একটি পৃথক দর্শন খুলবে।) যুক্ত করে এটি স্থায়ীভাবে কনফিগার করুনshow-date = short
op) ~ / .tigrc এ ; বা [tig]
.git / কনফিগার বা ~ / .gitconfig এর একটি বিভাগে।
একটি সম্পূর্ণ পরিবর্তন দেখতে :
যেহেতু টিগ গিট থেকে পৃথক এবং স্পষ্টত * নিক্স নির্দিষ্ট, তাই সম্ভবত উইন্ডোতে ইনস্টল করার জন্য সাইগউইনের প্রয়োজন। কিন্তু জন্য ফেডোরা আমি বিশ্বাস করি ইনস্টল কমান্ড হয় $ su
, (enter root password)
, # yum install tig
। জন্য FreeBSD ব্যবহার করে দেখুন % su
, (enter root password)
, # pkg_add -r tig
।
উপায় দ্বারা, টাইগ লগের দ্রুত দর্শন চেয়ে অনেক বেশি ভাল: স্ক্রিনশটস এবং ম্যানুয়াল
tig
আমার কনসোলে কেবল আমাকে একটি ত্রুটি দেয়-bash: tig: command not found
pact install tig
git log --pretty=format:'%h %ad %s (%an)' --date=short
অথবা
git log --pretty=format:'%h %ad %s | %an' --date=short
... উপরের সিডুন ২০০২ এর উত্তরে রিফিং: আমি লেখকের ই-মেইলটি হারাতে পেরেছি এবং জেস্পার এবং নিটল অনুসারে কেবল লেখকের নাম অন্তর্ভুক্ত করেছি, তবে পড়ার স্বাচ্ছন্দ্যের জন্য ধ্রুবক প্রস্থের কলামগুলিতে আউটপুট বজায় রাখার সিডুন ২০০২-এর ধারণাকে সামনে রেখে ( ভালো বুদ্ধি!). লেখকের নামের জন্য পৃথক বাম ন্যায়সঙ্গত কলামের পরিবর্তে, আমি কমান্ডের শেষে এই পতাকাটি একটি বন্ধনী দিয়ে আবৃত করি বা পাইপ দিয়ে অফসেট করি। (আউটপুট পড়ার ক্ষেত্রে ভিজ্যুয়াল এইড হিসাবে কাজ করা এমন কোনও চরিত্রই সত্যিই হতে পারে ... তবে ডিরেক্টরি বা কোনও কিছু দিয়ে আউটপুটকে বিভ্রান্ত করতে হ্রাস করতে পিছনে বা ফরোয়ার্ড স্ল্যাশগুলি এড়ানো বুদ্ধিমান হতে পারে))
নমুনা আউটপুট:
6fdd155 2015-08-10 Fixes casting error in doSave | John Doe
c4f4032 2015-08-10 Fix for IE save. Add help button. | Jane
29a24a6 2015-08-10 Fixes bug in Course | Mac
পূর্বনির্ধারিত গিট ওরফে ব্যবহার করুন, অর্থাত:
$ git work
আদেশ দ্বারা একবার তৈরি করা হয়েছে:
$ git config --global alias.work 'log --pretty=format:"%h%x09%an%x09%ad%x09%s"'
https://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases
বা গ্রাফ সহ আরও রঙিন:
$ git config --global alias.work 'log --pretty=format:"%C(yellow)%h %ar %C(auto)%d %Creset %s , %Cblue%cn" --graph --all'
git log --pretty=format:'%h %ad %s%x09%ae' --date=short
ফলাফল:
e17bae5 2011-09-30 Integrate from development -> main nixon@whitehouse.gov
eaead2c 2011-09-30 More stuff that is not worth mentioning bgates@apple.com
eb6a336 2011-09-22 Merge branch 'freebase' into development jobs@nirvana.org
কনস্ট্যান্ট-প্রস্থের স্টাফগুলি প্রথমে। সর্বনিম্ন গুরুত্বপূর্ণ অংশ - ইমেল ডোমেন - ফিল্টার করা শেষ এবং সহজ।
আমি সম্পাদিত কমিটগুলি দেখানোর জন্য যা আমি করি তা এগিয়ে নিতে প্রস্তুত
git log remotes/trunk~4..HEAD --pretty=format:"%C(yellow)%h%C(white) %ad %aN%x09%d%x09%s" --date=short | awk -F'\t' '{gsub(/[, ]/,"",$2);gsub(/HEAD/, "\033[1;36mH\033[00m",$2);gsub(/master/, "\033[1;32mm\033[00m",$2);gsub(/trunk/, "\033[1;31mt\033[00m",$2);print $1 "\t" gensub(/([\(\)])/, "\033[0;33m\\1\033[00m","g",$2) $3}' | less -eiFRXS
আউটপুটটি এমন দেখাচ্ছে:
ef87da7 2013-01-17 haslers (Hm)Fix NPE in Frobble
8f6d80f 2013-01-17 haslers Refactor Frobble
815813b 2013-01-17 haslers (t)Add Wibble to Frobble
3616373 2013-01-17 haslers Add Foo to Frobble
3b5ccf0 2013-01-17 haslers Add Bar to Frobble
a1db9ef 2013-01-17 haslers Add Frobble Widget
যেখানে প্রথম কলামটি হলুদ বর্ণে দেখা যায়, এবং পেরেনটিসিসে 'এইচ' 'এম' এবং 'টি' শিরোনাম, মাস্টার এবং ট্রাঙ্ক দেখায় এবং তাদের স্বাভাবিক "বর্ণনামূলক" রঙে উপস্থিত হয়
এখানে এটি লাইন বিরতির সাথে রয়েছে যাতে আপনি দেখতে পাচ্ছেন এটি কী করছে:
git log remotes/trunk~4..HEAD --date=short
--pretty=format:"%C(yellow)%h%C(white) %ad %aN%x09%d%x09%s"
| awk -F'\t' '{
gsub(/[, ]/,"",$2);
gsub(/HEAD/, "\033[1;36mH\033[00m",$2);
gsub(/master/, "\033[1;32mm\033[00m",$2);
gsub(/trunk/, "\033[1;31mt\033[00m",$2);
print $1 "\t" gensub(/([\(\)])/, "\033[0;33m\\1\033[00m","g",$2) $3}'
আমি এর সাথে "মঞ্চস্থ" হয়েছি:
git config alias.staged '!git log remotes/trunk~4..HEAD --date=short --pretty=format:"%C(yellow)%h%C(white) %ad %aN%x09%d%x09%s" | awk -F"\t" "{gsub(/[, ]/,\"\",\$2);gsub(/HEAD/, \"\033[1;36mH\033[00m\",\$2);gsub(/master/, \"\033[1;32mm\033[00m\",\$2);gsub(/trunk/, \"\033[1;31mt\033[00m\",\$2);print \$1 \"\t\" gensub(/([\(\)])/, \"\033[0;33m\\\\\1\033[00m\",\"g\",\$2) \$3}"'
(এর থেকে বাঁচার কি সহজ উপায় আছে? যা পালানোর দরকার তা কাজে লাগানো কিছুটা জটিল ছিল)
সমস্ত পূর্বোক্ত পরামর্শগুলি %s
সাবজেক্টের জন্য স্থানধারক ব্যবহার করে। আমি ব্যবহারের পরামর্শ দেব %B
কারণ %s
ফর্ম্যাট করা নতুন লাইন সংরক্ষণ করে এবং একাধিক লাইন প্রতিশ্রুতিবদ্ধ বার্তাটি স্কোয়াশেড প্রদর্শিত হবে।
git log --pretty=format:"%h%x09%an%x09%ai%x09%B"
প্রকল্প ফোল্ডারে এটি চালান:
$ git log --pretty=format:"%C(yellow)%h %ar %C(auto)%d %Creset %s , %Cblue%cn" --graph --all
এবং যদি আপনি চান, আপনার line / .gitconfig এ এই লাইনটি যুক্ত করুন:
[alias]
...
list = log --pretty=format:\"%C(yellow)%h %ar %C(auto)%d %Creset %s, %Cblue%cn\" --graph --all
গিট লগ চেষ্টা করুন - ব্যাখ্যা = পূর্ণ, এটি আপনাকে দেখাবে: - লেখক: লেখকের তারিখ: প্রতিশ্রুতিবদ্ধ: তারিখ:
আশাকরি এটা সাহায্য করবে.