Windows에서 msysgit 1.7.7.1 을 사용하고 있습니다. 을 사용할 때 오류가 발생 git diff
합니다. 원인은 무엇입니까? msysgit에 diff 도구가 포함되어 있지 않습니까? 어떻게해야합니까?
경고 : 터미널이 완전히 작동하지 않습니다.
Windows에서 msysgit 1.7.7.1 을 사용하고 있습니다. 을 사용할 때 오류가 발생 git diff
합니다. 원인은 무엇입니까? msysgit에 diff 도구가 포함되어 있지 않습니까? 어떻게해야합니까?
경고 : 터미널이 완전히 작동하지 않습니다.
답변:
Git Bash의 경우 ~ / .bashrc에 다음 줄을 추가하여이 문제를 해결할 수 있습니다.
export TERM=cygwin
-또는-
export TERM=msys
첫 번째는 Windows 용 git의 원본이고 두 번째는 "치유"하는 것으로 알려진 형식입니다.
다른 프로그램 (예 : Strawberry Perl )이 TERM
시스템 환경 변수를 설정하면 문제가 발생할 수 있습니다 .
setx TERM msys
. SETX
(단지 SET이 아닌) env 변수를 레지스트리에 씁니다.
예를 들어 cmd.exe에 문제가있는 경우 여기에서 경고를 참조하십시오.
그런 다음 환경 변수를 설정하고 TERM = msys를 포함하십시오. 그 후 cmd.exe를 열 때마다 변수가 올바르게 설정됩니다.
이제 쉘 (CMD.EXE)을 다시 시작해야합니다. 새로운 것을 실행하십시오. 그리고 거기에서 더 이상 문제가 없어야합니다. 다시:
위의 답변은 저에게 완전히 효과가 없었으므로 다음과 같이했습니다. 추가
export TERM=msys
상단의 " [githome] / etc / profile "로 변경했지만 git bash에 대해서만 변경되었습니다. 그런 다음 추가했습니다
@set TERM=msys
@setlocal 다음 에 " [githome] /cmd/git.cmd "로 이동합니다 (명령 줄에서 git 실행 만 설치했습니다). 이 결정은 정말 좋지 않을 수 있지만 저에게 효과적이며 터미널 경고가 없습니다. (저는 git 버전 1.7.10.msysgit.1을 사용합니다).
솔루션 작성자가 다음과 같이 주장하는 답변은 여기 에서 찾을 수 있습니다 .
환경 변수
TERM
가 다음으로 설정되었습니다.dumb
대신했다
TERM=cygwin
이를 다음으로 변경할 수 있습니다.
TERM=msys
당면한 문제를 해결합니다.
powershell에서 작업하고 내 경로에 직접 git 실행 파일이 있습니다.
제안 된 답변 중 어느 것도 효과가 없었지만 저에게 맞는 솔루션을 찾았습니다.
내 powershell 프로필에 다음 줄을 추가했습니다.
$env:TERM="msys"
나를 위해 문제를 해결했습니다.
내 경우에 빠르고 더러운 해결책은 --no-pager
옵션 을 사용하는 것으로 판명되었습니다 .
기본적으로 일부 git 명령 (예 log
:) less
은 출력이 길다고 예상하는 경우 와 같은 호출기를 사용합니다 . 호출기에는 화살표 키를 사용하여 텍스트를 위아래로 스크롤하는 것과 같은 것이 필요합니다. 이는 현재 사용중인 터미널의 종류에 대한 가정이 잘못된 경우 작동하지 않는 경우가 있습니다 ( "완전히 작동하지 않음"이 의미 함).
출력이 짧다는 것을 미리 알고 있거나 터미널에 출력을 덤프하고 터미널 프로그램까지 스크롤을 남겨 두길 원한다면 이것을 무시하고 호출기를 전혀 사용하지 않을 수 있습니다. 예 :
git --no-pager log