SSH 옵션을 git-clone에 전달

SSH 옵션을 git-clone에 전달

SSH를 사용하여 서버에 연결합니다.

ssh user@server -p 2224 -zZ abcd

내 서버에도 git 저장소가 있습니다. 내가 아는 유일한 복제 방법은 다음과 같습니다.

git clone ssh://[email protected]:2224/path/to/repo

-zZ abcd위 명령을 사용하면 명령에 서버가 없기 때문에 서버에 연결할 수 없습니다 . 다음 명령을 시도했지만 작동하지 않습니다.

git clone ssh://[email protected]:2224/path/to/repo -zZ abcd

git clone "ssh://[email protected]:2224/path/to/repo -zZ abcd"

git-clone명령에 SSH 매개변수를 포함하는 방법은 무엇입니까 ?

답변1

입력을 저장하도록 구성 옵션을 설정할 수 있습니다.

$ cat >>.git/config <<EOF
[remote "myrepo"]
    url = ssh://[email protected]:2224/path/to/repo -zZ abcd
EOF

만 사용git clone myrepo

Remote..url 옵션 설명 보기자식 구성더 알아보기.

답변2

또 다른 가능성은 호스트별 SSH 옵션을 설정하는 것입니다. 이는 ssh 옵션을 git뿐만 아니라 모든 ssh 명령에 적용하려는 경우 유용할 수 있습니다. 이러한 옵션은 ~/.ssh/config에 있으며 문서화되어 있습니다 man ssh_config. 예를 들어 ~/.ssh/config에는 다음과 같은 내용이 포함될 수 있습니다.

Host server.com
Compression "yes"
ConnectTimeout 4
GlobalKnownHostsFile /path/to/hosts_file

답변3

.ssh/config저장소를 많이 사용하는 경우 amcnabb이 말한 것처럼 이를 사용해야 합니다. .ssh/config구성 옵션에 대한 별칭을 만들거나 .git/config어떤 이유로 적합하지 않은 경우 이를 기억하십시오.

그러나 ssh공항 Wi-Fi에 갇히는 등 일시적인 구성 옵션을 전달해야 하는 경우 ssh일반적인 지침을 적용하세요.sshtor

소스에서 빌드 connect하여 경로에 설치됨connect.c

다음이라는 스크립트를 만듭니다 git-tbb.

#!/bin/bash
export CONNECT_PASSWORD=""
exec ssh -o ProxyCommand="connect -5 -S 127.0.0.1:9150 %h %p" $*

라는 파일을 만듭니다.git-tbb

#!/bin/bash
export GIT_SSH=`which ssh-tbb` git pull
exec git $*

-tor기본 Tor 구성의 포트를 TBB의 기본 9150 대신 9050으로 변경한 경우 이름을 바꾸십시오.

관련 정보