ฉันเพิ่งเห็นว่าgit
คอนโซลใน Windows เป็นสีเช่นสีเขียวสำหรับการเพิ่มสีแดงสำหรับการลบ ฯลฯ ฉันจะสีของฉันได้อย่างไรgit
คอนโซลเช่นนั้นได้อย่างไร
ในการติดตั้งฉันใช้คำสั่ง: $ sudo apt-get install git-core
ฉันเพิ่งเห็นว่าgit
คอนโซลใน Windows เป็นสีเช่นสีเขียวสำหรับการเพิ่มสีแดงสำหรับการลบ ฯลฯ ฉันจะสีของฉันได้อย่างไรgit
คอนโซลเช่นนั้นได้อย่างไร
ในการติดตั้งฉันใช้คำสั่ง: $ sudo apt-get install git-core
คำตอบ:
ตามที่ระบุไว้โดย@VonCให้ใช้color.ui
ค่าเริ่มต้นauto
ตั้งแต่ Git 1.8.4
จากคำถาม Unix & Linux Stackexchange วิธีทำให้ colorize ของ git เป็นอย่างไร และคำตอบโดย @Evgeny :
git config --global color.ui auto
นี่
color.ui
คือการกำหนดค่าเมตาที่รวมการcolor.*
กำหนดค่าต่างๆทั้งหมดที่มีให้กับgit
คำสั่งgit help config
นี่คือคำอธิบายในเชิงลึกใน
ดังนั้นโดยพื้นฐานแล้วการพิสูจน์ได้ง่ายกว่าและอนาคตมากกว่าการตั้งcolor.*
ค่าแยกกัน
คำอธิบายในเชิงลึกจาก git config
เอกสารประกอบ :
color.ui
: ตัวแปรนี้กำหนดค่าเริ่มต้นสำหรับตัวแปรเช่นcolor.diff
และcolor.grep
ควบคุมการใช้สีต่อตระกูลคำสั่ง ขอบเขตจะขยายเป็นคำสั่งเพิ่มเติมเรียนรู้การกำหนดค่าเพื่อตั้งค่าเริ่มต้นสำหรับ--color
ตัวเลือก ตั้งค่าเป็นalways
หากคุณต้องการให้เอาต์พุตทั้งหมดไม่ได้มีไว้สำหรับการใช้งานเครื่องเพื่อใช้สีเป็นtrue
หรือauto
หากคุณต้องการให้เอาต์พุตดังกล่าวใช้สีเมื่อเขียนไปยังเทอร์มินัลหรือfalse
หรือnever
หากคุณต้องการคำสั่ง git ที่จะไม่ใช้สี การกำหนดค่าอื่น ๆ หรือ--color
ตัวเลือก
auto
เพียงพอ
ui = auto
รายการใน[color]
ส่วนใน~/.gitconfig
ไฟล์ของผู้ใช้
ตัวอย่างเช่นดูhttps://web.archive.org/web/20080506194329/http://www.arthurkoziel.com/2008/05/02/git-configuration/
ส่วนที่น่าสนใจคือ
เอาท์พุท Colorized:
git config --global color.branch auto git config --global color.diff auto git config --global color.interactive auto git config --global color.status auto
color.ui auto
ไม่ได้ผลสำหรับฉันสิ่งนี้ทำได้ ขอบคุณ.
เพิ่มไฟล์. gitconfig ของคุณในรหัสถัดไป:
[color]
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
Git จะให้สีส่วนใหญ่ของผลลัพธ์โดยอัตโนมัติถ้าคุณถาม คุณสามารถระบุได้อย่างเฉพาะเจาะจงเกี่ยวกับสิ่งที่คุณต้องการสีและวิธีการ; แต่หากต้องการเปิดเทอร์มินัลการระบายสีเริ่มต้นทั้งหมดให้ตั้ง color.ui เป็นจริง:
git config --global color.ui true
ใน Ubuntu หรือแพลตฟอร์มอื่น ๆ (ใช่ Windows ด้วย!); เริ่มต้นgit1.8.4ซึ่งได้รับการปล่อยตัวออกมา 2013/08/23 , คุณจะไม่ต้องทำอะไร :
ผู้สอนหลายคนสอนให้ผู้ใช้ตั้ง "color.ui" เป็น "auto" เป็นสิ่งแรกหลังจากที่คุณตั้งค่า "
user.name/email
" เพื่อแนะนำตัวเองให้รู้จักกับ Git ตอนนี้ตัวแปรเริ่มต้นที่ "auto
"
ดังนั้นคุณจะเห็นสีตามค่าเริ่มต้น
git config --global color.ui auto
ติดตั้งคอมไพล์และยังคงมีการวิ่ง เช่นเดียวกับ Mac ของฉันสิ่งเดียวที่เป็นค่าเริ่มต้นauto
คือ Git Bash บนพีซี Windows ของฉัน
ใน~/.gitconfig
ไฟล์ของคุณเพียงเพิ่ม:
[color]
ui = auto
ดูแลคำสั่ง git ทั้งหมดของคุณ
อีกวิธีคือแก้ไข.gitconfig
(สร้างถ้าไม่มี) ตัวอย่างเช่น:
vim ~/.gitconfig
แล้วเพิ่ม:
[color]
diff = auto
status = auto
branch = auto
[color] ui = auto
ก็เพียงพอแล้ว
GIT ใช้เอาต์พุตสีโดยค่าเริ่มต้น แต่ในบางระบบเช่น CentOS จะไม่เปิดใช้งาน คุณสามารถเปิดใช้งานเช่นนี้
git config --global color.ui true
git config --global color.ui false
git config --global color.ui auto
คุณสามารถเลือกคำสั่งที่ต้องการได้จากที่นี่
นี่ - โกลบอลเป็นทางเลือกเพื่อใช้การดำเนินการกับที่เก็บในระบบของคุณ หากคุณต้องการใช้การระบายสีสำหรับพื้นที่เก็บข้อมูลปัจจุบันเท่านั้นคุณสามารถทำสิ่งนี้ -
git config color.ui true
ด้วย Git 2.18 คุณสามารถควบคุมวิธีการระบุสีในคอนโซลได้มากขึ้น
"การgit config
" ใช้คำสั่งแยกตัวเลือกเช่น " --int
", " --bool
" ฯลฯเพื่อระบุสิ่งที่พิมพ์โทรต้องการค่าที่จะตีความว่าเป็นเพื่อระบุสิ่งที่พิมพ์โทรต้องการค่าที่จะตีความว่าเป็น
ใหม่ "--type=<typename>
มีการแนะนำตัวเลือก " ซึ่งจะทำให้การกำหนดประเภทใหม่สะอาดขึ้น
ดูคอมมิท fb0dc3b (18 เม.ย. 2018) และคอมมิท 0a8950b (09 เม.ย. 2018) โดยเทย์เลอร์บttaylorr
เลา( )
(ผสานโดยJunio C Hamano - gitster
- in e3e042b , 08 พฤษภาคม 2018)
builtin/config.c
: สนับสนุน--type=<type>
เป็นนามแฝงที่ต้องการสำหรับ--<type>
git config
อนุญาตให้ผู้เรียกสามารถระบุ 'ตัวระบุชนิด' ได้นานซึ่งสั่งgit config
ให้ (1) ตรวจสอบให้แน่ใจว่าค่าที่เข้ามาสามารถตีความได้ว่าเป็นประเภทนั้นและ (2) ค่าที่ส่งออกจะถูกกำหนดให้เป็นมาตรฐานภายใต้ประเภทนั้นในซีรีส์อื่นเราเสนอให้ขยายการทำงานนี้กับ
--type=color
และจะเข้ามาแทนที่--default
--get-color
อย่างไรก็ตามเรามัก
--color
จะใช้เพื่อหมายถึง "colorize ผลลัพธ์นี้" แทน "ค่านี้ควรถือว่าเป็นสี"ขณะนี้
git config
ยังไม่รองรับการทำสีแบบนี้ แต่เราควรระวังไม่ให้ตัวเลือกนี้ช้าเกินไปเพื่อให้git config
สามารถรองรับได้--color
(ตามความหมายดั้งเดิม) ในอนาคตหากต้องการในแพทช์นี้เราสนับสนุน
--type=<int|bool|bool-or-int|...>
นอกเหนือไป--int
,--bool
และอื่น ๆ
ซึ่งจะช่วยให้แพทช์ดังกล่าวจะเกิดขึ้นเพื่อสนับสนุนการสอบถามค่าสีที่มีค่าเริ่มต้นผ่าน--type=color --default=...
โดยไม่ใช้จ่ายสุรุ่ยสุร่าย--color
โดยไม่ใช้จ่ายสุรุ่ยสุร่ายเรายังคงรักษาพฤติกรรมทางประวัติศาสตร์ของการร้องเรียนเมื่อ
--<type>
มีการมอบธงสไตล์ดั้งเดิมหลายรายการรวมถึงขยาย--type=<type>
ธงนี้เป็นธงสไตล์ใหม่ที่ขัดแย้งกัน--int --type=int
(และคู่สลับของมัน) ไม่บ่น แต่--bool --type=int
(และคู่สลับของมัน) ไม่
ดังนั้นก่อนที่คุณจะมี--bool
และ--int
ตอนนี้ ( เอกสาร ):
--type <type>
'
git config
' จะตรวจสอบให้แน่ใจว่าอินพุตหรือเอาต์พุตใด ๆ นั้นถูกต้องภายใต้ข้อ จำกัด ประเภทที่กำหนดและจะกำหนดค่าออกให้เป็นมาตรฐานใน<type>
เป็นรูปแบบมาตรฐานที่ถูกต้อง
<type>
รวมถึง:
- '
bool
': กำหนดค่าแบบบัญญัติให้เป็น "true
" หรือ "false
"- '
int
': ค่า canonicalize เป็นเลขทศนิยมอย่างง่าย คำต่อท้ายที่เป็นตัวเลือก 'k
', 'm
' หรือ 'g
' จะทำให้ค่าคูณด้วย 1024, 1048576 หรือ 1073741824 เมื่อป้อนข้อมูล- '
bool-or-int
': บัญญัติให้เป็นไปตาม 'bool
' หรือ 'int
' ตามที่อธิบายไว้ข้างต้น- '
path
': canonicalize โดยการเพิ่มชั้นนำ~
ค่าของ$HOME
และ~user
ไปยังไดเรกทอรีบ้านสำหรับผู้ใช้ที่ระบุ ตัวระบุนี้ไม่มีผลเมื่อตั้งค่า (แต่คุณสามารถใช้git config section.variable ~/
จากบรรทัดคำสั่งเพื่อให้เชลล์ทำการขยาย)- '
expiry-date
': canonicalize โดยการแปลงจากสตริงวันที่คงที่หรือสัมพันธ์กับการประทับเวลา ตัวระบุนี้ไม่มีผลเมื่อตั้งค่า
--bool::
--int::
--bool-or-int::
--path::
--expiry-date::
Historical options for selecting a type specifier. Prefer instead `--type`,
(see: above).
โปรดทราบว่า Git 2.22 (Q2 2019) อธิบายว่า " git config --type=color ...
" มีวัตถุประสงค์เพื่อแทนที่ " git config --get-color
" แต่มีความแตกต่างเล็กน้อยที่ไม่ได้บันทึกไว้ซึ่งตอนนี้ได้รับการแก้ไขแล้ว
ดูกระทำ cd8e759 (5 มีนาคม 2019) โดยเจฟฟ์คิง (peff
)
(ผสานโดยJunio C Hamano - gitster
- in f6c75e3 , 20 Mar 2019)
config
: เอกสาร--type=color
เอาท์พุทเป็นบรรทัดที่สมบูรณ์แม้ว่า
--type=color
ตัวเลือกใหม่สำหรับ "git config
" จะถูกปรับให้เข้ากันได้กับ--get-color
ตัวเลือกแบบดั้งเดิม " " ซึ่งแตกต่างจากรุ่นหลัง แต่เอาต์พุตของมันไม่ได้เป็นบรรทัดที่ไม่สมบูรณ์ซึ่งขาด LF ในตอนท้าย
ที่ทำให้สอดคล้องกับการส่งออกประเภทอื่น ๆ เช่น "git config --type=bool
"จัดทำเป็นเอกสารเพราะบางครั้งก็ทำให้ผู้ใช้งานที่ไม่สงสัยเกิดความประหลาดใจ
ตอนนี้อ่าน:
--type=color [--default=<default>]
เป็นที่ต้องการมากกว่า--get-color
(แต่โปรดทราบว่า--get-color
จะละเว้นบรรทัดใหม่ต่อท้ายที่พิมพ์โดย--type=color
)
คุณสามารถดูการgit config --type=bool
ใช้กับ Git 2.26 (ไตรมาสที่ 1 ปี 2020) เพื่อแทนที่ " git config --bool
" การโทรในเทมเพลตตัวอย่าง
ดูกระทำ 81e3db4 (19 มกราคม 2020) โดยลูเซียส Hu (lebensterben
)
(ผสานโดยJunio C Hamano - gitster
- in 7050624 , 30 Jan 2020)
templates
: แก้ไขตัวเลือกประเภทที่เลิกใช้แล้ว--bool
ลงชื่อออกโดย: Lucius Hu
--bool
ตัวเลือกที่จะgit-config
ถูกทำเครื่องหมายเป็นประวัติศาสตร์และผู้ใช้จะแนะนำให้ใช้--type=bool
แทน
การกระทำนี้แทนที่ทุกสิ่งที่เกิดขึ้น--bool
ในแม่แบบนอกจากนี้ทราบว่าไม่มีตัวเลือกอื่น ๆ ประเภทที่เลิกใช้จะพบรวมทั้ง
--int
,--bool-or-int
, หรือ--path
--expiry-date
อ้างอิงที่นี่: https://nathanhoad.net/how-to-colours-in-git/
ขั้นตอน
เปิด ~ / .gitconfig เพื่อแก้ไข
vi ~ / .gitconfig
วางรหัสต่อไปนี้:
[color]
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
บันทึกไฟล์
เพียงแค่เปลี่ยนไฟล์ใด ๆ ใน repo ท้องถิ่นของคุณและทำ
git status