เมื่อฉันใช้ Windows เชลล์ (แม้แต่เชลล์ Windows มาตรฐาน) จะแสดงข้อมูลพื้นฐานเกี่ยวกับที่เก็บ git เมื่อคุณอยู่ในที่เก็บ git สิ่งต่าง ๆ เช่นกิ่งไม้ที่ใช้งานอยู่และอาจมีรหัสสี
มีวิธีการเหมือนกันใน Ubuntu หรือไม่?
เมื่อฉันใช้ Windows เชลล์ (แม้แต่เชลล์ Windows มาตรฐาน) จะแสดงข้อมูลพื้นฐานเกี่ยวกับที่เก็บ git เมื่อคุณอยู่ในที่เก็บ git สิ่งต่าง ๆ เช่นกิ่งไม้ที่ใช้งานอยู่และอาจมีรหัสสี
มีวิธีการเหมือนกันใน Ubuntu หรือไม่?
คำตอบ:
เชลล์ Windows Git ซึ่งจริง ๆ แล้วเพิ่งทุบตีตั้งค่าให้$PS1
เป็นสตริงที่มีความ$(__git_ps1)
ยาว
__git_ps1
ถูกกำหนดให้เป็นฟังก์ชั่นซึ่งมีความยาวเกือบ 100 บรรทัดซึ่งจะพิมพ์ชื่อของสาขาปัจจุบันในวงเล็บ
/etc/profile
(ซึ่งก็คือC:\Program Files (x86)\Git\etc\profile
อย่างน้อยในระบบของฉัน)) เรียกใช้/etc/git-completion.bash
ซึ่งกำหนด__git_ps1
ฟังก์ชั่นตั้ง$PS1
กำหนดความสำเร็จบางอย่างที่เฉพาะเจาะจงกับคอมไพล์เหนือสิ่งอื่นใด
สำหรับสี:
git config --global color.ui true
หากคุณใช้ zsh เป็นเชลล์คุณอาจพบว่าไฟล์ config ของฉันมีประโยชน์ ลองsource prompt/blocky
ดูว่าพรอมต์มีลักษณะอย่างไรในที่เก็บ Git
วิธีหยุดสีของพรอมต์สีจากการหลบหนีมีตัวอย่าง คุณสามารถคัดลอกจากคำตอบแล้วใช้ gedit เพื่อวางไว้ที่ด้านล่างของไฟล์. bashrc ของคุณในโฮมไดเร็กตอรี่ของคุณ (ทำการสำรองข้อมูลก่อนแน่นอน)
หากไฟล์. bashrc Keith กล่าวถึงคำตอบของเขาเป็นส่วนหนึ่งของคอมไพล์ไฟล์นั้นจะได้รับลิขสิทธิ์กับ GPL2 ดังนั้นคุณควรมีอิสระที่จะส่งต่อให้เป็นไฟล์. bashrc ของคุณได้เช่นกัน คุณจะต้องคว้าไฟล์ /etc/git-completion.bash และติดตั้งที่อื่นเช่นกันและมี. bashrc ใหม่ของคุณอ้างอิง
นี่คือสิ่งอื่นที่คุณสามารถวางและลองจากอาร์ตูโรเฟอร์นันเดซได้ที่http://www.bsnux.com/recipes/how-display-you-current-git-branch-prompt.html
# การแสดงสาขา git ภายในพรอมต์ ฟังก์ชัน parse_git_branch { git branch - no-color 2> / dev / null | sed -e '/ ^ [^ *] / d' -e 's / * \ (. * \) / (\ 1) /' } ฟังก์ชั่น proml { local GREEN = "\ [\ 033 [0; 32m \]" local WHITE = "\ [\ 033 [0; 37m \]" PS1 = "[\ u @ \ h \ w $ GREEN \ $ (parse_git_branch)] $ WHITE \ $" PS2 = '>' PS4 = '+' } proml
git-core
ติดตั้งแพ็คเกจหรือไม่