msysgit을 사용하여 다른 PC에서

msysgit을 사용하여 다른 PC에서

cygwin에 SSH로 접속할 때 git-upload-pack 오류가 발생합니다. cygwin에서는 *nix 환경에서 예상대로 sshd경로를 취하지 않습니다 ..bash_profile

이 문제를 해결하고 cygwin bash 및 cygwin ssh에서 msysgit이 제대로 작동하도록 하는 방법은 무엇입니까?

답변1

나는 나처럼 git-upload-pack 누락 오류가 발생하는 사람들을 여기저기 살펴보았고 이것을 생각해 냈습니다.

기본적으로 이것은 Cygwins ssh 경로에 msysgit이 포함되도록 설정합니다.

  • msysgit을 설치합니다(git bash만 사용하면 cygwin에 git.cmd가 필요하지 않습니다).

  • SSH용 cygwin 검색을 설치하고 체크/체크하세요.

    ssh-host-config -y 
    

    나는 CYGWIN var를 기본값이 올바른 것으로 보이는 것으로 설정하는 것을 귀찮게 하지 않았습니다.

    cygrunsrv.exe -R sshd 
    

그 과정에서 생성된 서비스를 제거합니다.

    ssheNv="/usr/bin:/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/bin"

    mSysgit="/usr/local/bin:/c/WINDOWS/system32:/c/WINDOWS:/cygdrive/c/Program Files/Git/bin:/cygdrive/c/Program Files/Git/libexec/git-core"

이제 아래 경로에 이 두 문자열을 추가하세요.

    cygrunsrv -I sshd -d "CYGWIN sshd" -p /usr/sbin/sshd -a -D -e "PATH=$ssheNv:$mSysgit"

    cygrunsrv.exe -S 

서비스를 시작합니다(원하는 경우 다시 중지하려면 -E를 사용하세요).

msysgit을 사용하여 다른 PC에서

git clone  ssh://dude@hostIPetc'/Documents and Settings/blabla/myrepo.git'

자신의 길에 잘 가지지 못한 사람들의 경우 git-upload-pack이것이 문제를 해결합니다. 경로를 만족시키기 위해 cygwin git을 설치할 필요가 없습니다!

그런데 Cygwin 경로 "/cygdrive/d/" 등을 가리키는 방법을 알아낼 수 있는 사람이 있습니까? 지금은 /만 작동하며 이는 C:\를 의미합니다.

누군가 이것이 엉성하고 cygwin git을 사용해야 한다고 생각한다면 그렇게 말하십시오.

http://www.grumpydev.com/2011/01/19/switching-from-cygwin-to-msysgit-git-thinks-everything-has-been-modified/ MSysGit의 "가짜" 파일 모드는 cygwin으로 전환해야 하는 이유이거나 Windows에서 도움이 되기 때문입니다...

관련 정보