에 $ USER를 통과하지 않고, 하나는 같은 로그인 사용자 이름을 포함하는 환매 특약 URL을 설정할 수 있습니다 :카피 스트라 노 (3) 카피 스트라 노 2에서 원격 ssh를
set :repo_url, "git+ssh://#{ENV['LOGNAME']}@myrepo.example.com/path/name"
이 일의 목적은 $ LOGNAME은 REPO에 액세스하는 것입니다 계정을 사용하여 정상적인 권한을 얻습니다. 배포 서버의 로그인은 $ {LOGNAME}이 아니므로 좋습니다.
capistrano 3에서는이 작업을 수행 할 수 있지만 원래 사용자 X는 ../repo/.git/config를 채 웁니다. 사용자 Y는 로그인 할 수 없으므로 다음 사용자에게는 실패합니다. myrepo.example.com as X Capitrano 2에서는 신선한 git repo가 매번 체크 아웃 되었기 때문에이 작업을 수행했습니다. cap3 방식은 훨씬 더 효율적이지만, 나는 무엇을 해야할지에 대해 망설이다. /tmp/git-ssh-deploy-staging-user.sh 스크립트가 -l 사용자 인 을 ssh 명령 줄에 추가하면 모두 정상이지만 아무 것도 표시되지 않습니다.
나는 repo 서버에 "배포"사용자를 생성하고 repo에 읽기 전용 권한을 부여했지만, 확장 성 솔루션으로는별로 대수롭지 않습니다. $가 필요합니다. ADMIN은 repo를 사용하여 사람들이 자신의 일을하도록 내버려 두지 않습니다.
내가 제안을 찾고 있습니까? 코드에있는 것일 수도 있고 아직 옵션을 찾지 못했을 수도 있습니다.