2013-01-19 1 views
15

사용자의 git 문제를 해결할 때 git의 오류/경고 메시지를 알지 못하고 계속 손가락을 불 태우고있는 사람들을 만나고 있습니다. 오류 및 경고 출력을 채색하는 방법이 있습니까?git 오류, 경고 및 치명적인 메시지를 어떻게 색칠합니까?

+1

+1, 좋은 질문입니다. 대부분의 사람들은 읽는 법을 모른다. – fge

+1

어떤 운영 체제/git 클라이언트 에서요? – DaveShaw

+0

DaveShaw : 모든 OS에서 일반 콘솔 자식 클라이언트. – user1338062

답변

1

color 구성 섹션을 git으로 사용할 수 있습니다. 어떤 자식은 할 BUIT 된 방법이 없습니다

[color] 
    interactive = always 
[color "interactive"] 
    error = red bold 
+0

직접 해보셨습니까? 왜냐하면 내가 아는 한, 그것은 적어도 오류/치명적이지 않습니다. – user1338062

+0

이것은'git add --interactive'와 같은 것에 만 적용된다고 생각합니다. – jszakmeister

5

(당신의 .gitconfig에 추가) : 자세한 내용과 예제는

http://git-scm.com/book/en/Customizing-Git-Git-Configuration#Colors-in-Git 참조하거나 http://blog.philippmetzler.com/?p=15

예제의 두 번째 부분. 힘내는 단지 오류를 STDERR에 출력하고 오류 등의 치명적인 문제는 신경 쓰지 않습니다. 당신은 무엇입니까 합니까 색상 STDERR 빨간색입니다.

  1. 이 같은 명령을 실행합니다 : 세 가지 기본 옵션이 있습니다 https://serverfault.com/questions/59262/bash-print-stderr-in-red-color

    :이에 Serverfault에에 요청 된 수행하는 방법에

    *git-command* 2> >(while read line; do echo -e "\e[01;31m$line\e[0m" >&2; done) 
    
  2. 사용 래퍼 스크립트 (ServeFault를 참조하십시오), 그리고 명령을 실행

    mywrapper *git-command* 
    
  3. 설치 stderred. 이렇게하면 명령 줄을 수정하지 않고도 효과를 영구적으로 유지할 수 있습니다. 그러나 이것이 창문에서 작동 할 지 확신하지 못합니다. 나는 색상 오류 메시지에 적절한 방법을 찾아야하지 않았기 때문에

+0

붉은 색으로'stderr'를 채색하는 것이 나에게 효과가 없다. git은 오류뿐만 아니라'stderr'에 많은 것을 기록한다. 표준 출력에는 일부 오류가 출력됩니다. –

5

, 내 솔루션은 자식이 오류 코드를 반환 할 때 추가 경고를 추가하는 것입니다 (! = 0). enter image description here

참고 빨간색으로 열려진 착색하는 것은 아주 잘하기 때문에 자식 로그를 여러 가지 작동하지 않습니다 :

이 작업을 수행하려면 , ~/.bashrc 또는 여기

# Wrap git. On errors, print an additional line in red. 
git(){ 
    command git "[email protected]" 
    local exitCode=$? 
    if [ $exitCode -ne 0 ]; then 
     printf "\033[0;31mERROR: git exited with code $exitCode\033[0m\n" 
     return $exitCode 
    fi 
} 

~/.bash_profile이 결과 당신이 추가

stderr에서는 오류 만이 아닙니다. 표준 출력에는 일부 오류가 출력됩니다.

관련 문제