문제

Torvalds는 가지고있는 것 같습니다 다음 프롬프트.

[torvalds@g5 git]$ 

첫 번째 단어는 사용자 이름입니다. g5 git repo의 지점 인 것 같습니다. git 그것이 git의 지점임을 보여줍니다.

내 현재 프롬프트

PROMPT="$"

Torvalds와 비슷한 프롬프트를 어떻게 가질 수 있습니까?

도움이 되었습니까?

해결책

사실, 나는 그것을 추측하고있다 g5 그가 현재 작업중 인 컴퓨터의 호스트 이름을 말하며 git 현재 작업 디렉토리입니다. 형식 [user@hostname dir]$ 꽤 표준 (즉, 널리 사용되는) 쉘 프롬프트입니다.

다른 팁

Git과 BASH 프로그래밍 가능한 완료와 통합 이름이 지정된 함수를 제공합니다 __git_ps1.

당신이 당신을 바꾸면 PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ ' (당신의 .bashrc 또는 다른 대화식으로 제공되는 파일) 및 더 이상 사용자 정의하지 않으면 프롬프트가 다음과 같습니다.

[user@host ~]$ cd /usr/src/linux
[user@host linux ((v2.6.30))]$

사용하는 경우 ZSH (더 인기있는 배쉬 대신), 프롬프트의 VCS 정보 사용에 대한 Xana Yammering의 블로그 게시물 vcs_info Frank Terbeck이 ZSH를 위해 개발 한 서브 시스템, Git의 백엔드.

Ephemient가 말했듯이, 당신은 그것을 갖고 싶을 것입니다 git bash 스크립트가 설치되었습니다, 설치 지침은 파일 상단 근처에 있습니다. 당신은 또한 확인하고 싶을 수도 있습니다 Github 가이드 페이지 이것을 위해. 주목할 가치가있는 한 가지는 지점이 GIT 디렉토리에있는 경우에만 나타납니다. 예를 들어, 이것은 내 일반 프롬프트가 어떻게 보이는지입니다. blaenk@macbook:~ $ 그리고 제가 GIT 디렉토리에있을 때 프롬프트는 다음과 같습니다. blaenk@macbook:~/code/iphone/DIFM (master*)$

면밀히 살펴보면 분기 마스터가 표시되는 부분에는 별표가 있습니다. 이것은 무시한 변화가 있음을 나타냅니다. 변경 사항이 무대에있는 경우 A +를 표시합니다. 이것은 꽤 도움이 될 수 있습니다. 이렇게하려면 기본적으로 설정해야합니다 GIT_PS1_SHOWSTASHSTATE 비어 있지 않은 상태로. 예를 들어 당신의 ~/.bashrc 또는 ~/.bash_profile, 다음을 넣으십시오.

export GIT_PS1_SHOWDIRTYSTATE=true

이제 GIT 디렉토리로 이동하면 무대 변경 사항이없는 경우 표시기가 표시되거나 무대 변경 사항이 있는지 표시해야합니다. 파일을 편집하여 이것을 실제로 빨리 테스트 할 수 있습니다. 별표가 나타나야합니다. 그런 다음 다음을 수행하여 파일을 원래 상태로 복원 할 수 있습니다.

git checkout -- the/file.txt

그건 그렇고, 자동 완전한 bash 스크립트도 정말 대단합니다. 마침내 'git chec'과 같은 작업을 수행 한 다음 탭을 누르면 체크 아웃에 자동 완성 될 수 있으며 분기 이름도 자동으로도 할 수 있습니다.

당신이 가장 관심이있을 가능성이 가장 높은 다른 리소스는 다음과 같습니다. 원하는 방식으로 프롬프트를 형성하는 프로세스를 안내하고 원하는 경우 특정 부품에 색상을 추가하여 훨씬 더 읽기 쉽고 읽을 수 있고 유익한 프롬프트. 과도하게 사용하지 마십시오.

검색 중에이 질문을 발견했습니다. 이를위한 새로운 솔루션을 공유 할 생각 만하면됩니다.

액체 프롬프트 GIT 브랜치를 표시하고 GIT 저장소의 다른 상태에 대한 다양한 색상화를 포함하여 ZSH 프롬프트에 대한 많은 사용자 정의가 가능합니다.

나는 마침내 다음과 같은 일을한다

 function get_git_branch { 
   git branch | awk '/^\*/ { print $2 }
 }
 function get_git_dirty { 
   git diff --quiet || echo '*'
 }
 function get_git_prompt { 
   git branch &> /dev/null || return 1 
   echo "($(get_git_branch)$(get_git_dirty)) "
 }
 PROMPT="$(get_git_prompt)\$ "

원천

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top