ฉันใช้คำแนะนำนี้เพื่อแสดงชื่อสาขาใน gnome terminal (Ubuntu 15.10) เมื่อทำงานในที่เก็บ git จากข้างต้นตอนนี้ฉันมีด้านล่างในไฟล์ ~ / .bashrc ของฉัน:
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
...
# Add git branch if its present to PS1
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi
unset color_prompt force_color_prompt
ดังนั้นตอนนี้ฉันได้รับ:
ดังนั้นมันจึงใช้งานได้ แต่ทำไมสีของ user @ host ของฉันถึงถูกลบออกไป? และฉันก็คาดหวังด้วยว่าชื่อสาขาควรเป็นสี ก่อนที่มันจะเป็นแบบนี้:
อัปเดต: ฉันได้ลองใช้คู่มือนี้แทน:
https://coderwall.com/p/fasnya/add-git-branch-name-to-bash-prompt
เพิ่มไปยัง. bashrc:
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\u@\h \[\033[32m\]\w\[\033[33m\]\$(parse_git_branch)\[\033[00m\] $ "
และใช้งานได้:
แจ้งให้ทราบล่วงหน้าใน. bashrc ฉันยังมีนี้ (เริ่มต้น):
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
ฉันยังไม่พบสาเหตุที่ตัวอย่างข้อมูลนั้นให้ผลลัพธ์ที่ถูกต้องและรุ่นอื่นไม่ได้ ข้อมูลใด ๆ เกี่ยวกับเรื่องนี้?
นี่คือรุ่นของ. bashrc ของฉันที่เปิดใช้ข้อมูลโค้ดเก่าซึ่งไม่ทำงาน:
.bashrc
ไหม IIRC ค่าเริ่มต้น.bashrc
ไม่ได้เปิดใช้งานการแจ้งเตือนสีดังนั้นคุณต้องเปลี่ยนเพื่อแสดงสี ขึ้นอยู่กับสิ่งที่คุณเปลี่ยนแปลง
force_color_prompt
ไม่แสดงความคิดเห็นจึงไม่ช่วย
.bashrc
มากเกินไป /etc/skel/.bashrc
หากคุณเลอะคุณสามารถได้รับจากเดิม
force_color_prompt
uncommented มาก่อนหรือไม่