sh: git-upload-pack : command not found 오류 해결하기

         




서버을 이용해 GIT을 이용하기 위해 설정을 하던중 다음과 같은 오류가 발생했습니다.




sh: git-upload-pack: command not found

fatal: could not read from remote repository.


...?


git-upload-pack 명령어를 찾을 수 없다는 소리입니다.

이는 원격 접속지에 git-upload-pack의 경로를 찾을 수 없는 경우 발생합니다.


저는 QNAP을 GIT 서버로 사용하고 있습니다. 일단 서버에 GIT이 설치되어있다는 가정하에 git-upload-pack경로를 찾습니다.




find 명령어를 이용해서 서버에 git-upload-pack이 어디있는지 찾습니다. 제 서버에는 위와같은 경로에 git-upload-pack이 위치해 있군요..


자 이제 git-upload-pack의 위치는 알았습니다. 그럼 과연 어디다가 넣어야 할까요? 서버에서 환경설정으로 PATH가 어디로 정의되어있는지 알면 간단합니다. 그럼 서버의 PATH 경로를 아는 방법은 무엇일까요?


클라이언트에서 다음과 같은 명령어를 입력합니다.




ssh yourid@serverip echo \$PATH 명령어를 입력하면 서버의 환경주소가 리턴됩니다. 저는 /usr/bin, /bin, /usr/sbin, /sbin으로 되어있군요. 이제 이 경로에 git-upload-pack을 추가하면 됩니다. 다만 여기서 파일을 복사하지 않고 링크만 추가하는 방식으로 쉽게 설정할 수 있습니다. 일단 서버에서 usr/bin경로로 이동한 다음 아래 명령어를 입력하세요.



ln -s 는 링크를 추가하는 명령어입니다. 위와같이 입력하면 현재위치에 위 경로에 대한 링크가 생기면서 실제로 해당 경로의 파일을 실행한 것과 같은 역할을 하게 됩니다. 


설정이 완료되었으니 이제 서버로 clone을 걸면 끗~ 

댓글(1)

  • 지니빵
    2016.02.25 18:04

    안녕하세요
    QNAP에 Git을 설치하고 PUSH를 하던 중, 같은 에러가 났습니다.
    위에 친절하게 설명해 주신대로 링크도 넣었는데 Push 할때마다 똑같은 에러가 납니다 ㅠㅠ
    다른 해결방법은 없는건가요?

Designed by JB FACTORY