Cygwin git pull은 명령이 아닙니다.

Cygwin git pull은 명령이 아닙니다.

갑자기 git pull이 cygwin에서 작동을 멈췄습니다. 이 재귀적인 오류 메시지가 나타납니다.

git: 'pull' is not a git command. See 'git --help'.

Did you mean this?
        pull

git status 및 기타 git 명령을 수행할 수 있지만 어떤 이유로 풀이 작동하지 않습니다. 이전에는 이전에 오랫동안 작동해 왔습니다. 다시 시작한 후에 이 문제가 발생했습니다. 나는 clobbering을 시도하고 cygwin을 완전히 다시 설치했지만 여전히 같은 문제를 겪고 있습니다. 내 길은 괜찮은 것 같습니다.

$ type -a git
git is /usr/bin/git
git is /bin/git

추가 정보: git 명령의 실행 파일은 /usr/lib/git-core 아래에 있는 것으로 보이며 git-pull은 확장자가 없고 !/bin/sh 헤더가 있는 쉘 스크립트입니다.

답변1

당신은 할 수있다Cygwin 경로에 디렉토리가 없습니다.


~/.bashrc에 다음 줄을 추가하세요.

export GIT_EXEC_PATH=/opt/local/libexec/git-core
$PATH=/opt/local/libexec/git-core:$PATH
export PATH

답변2

이 문제는 Windows 업데이트가 업데이트를 설치했고 재부팅이 보류 중이었기 때문에 발생했습니다. 내 생각엔 git pull이 Windows가 업데이트로 대체한 일부 라이브러리나 다른 파일을 활용하려고 했던 것 같습니다.

/usr/libexec/git-core 폴더에서 git.exe를 수동으로 실행하려고 시도했는데 Windows에서 STATUS_DELETE_PENDING을 의미하는 0xC0000056 오류 코드를 받았습니다. 구글링을 해보니 재부팅이 필요하다는 답변이 나왔습니다.

재부팅 후 git pull이 올바르게 작동했습니다.

tl;dr OP와 같은 오류가 발생하면 git.exe를 수동으로 실행하고 해당 오류에 대한 해결 방법을 검색해 보세요.

답변3

Perl이 설치되어 있고 바이러스 백신이 실행되고 있습니까?

Perl을 설치하고 바이러스 백신을 일시적으로 비활성화해 보십시오.

답변4

이 문제를 해결하는 가장 쉬운 방법은 cygwin setup.exe를 통해 git을 다시/설치하는 것입니다.

나는 같은 문제가 있었고 cygwin 설정을 통해 git을 설치하지 않았으므로 경로와 env 변수가 연결되지 않았습니다.

설정을 통해 설치하면 문제가 해결되었습니다.

관련 정보