Overview
On the Grid, we exclusively use the svn+ssh:// scheme, and not http://. For this reason, it is normal to experience multiple password prompts for every outbound connection.
The solution is to use a separate SSH password-caching tool like ssh-agent on a Unix system. For more details, please see below. The steps outlined below would work on any UNIX system, such as OS X or Ubuntu.
Requirements
Before beginning this article, you should complete the following articles first:
After following the articles above, we can proceed.
Caution
This article is provided as a courtesy. Installing, configuring, and troubleshooting third-party applications is outside the scope of support provided by (mt) Media Temple. Please take a moment to review the Statement of Support.
Instructions
- Create a file called .profile in your home directory using vi or your favorite Unix text editor. It is possible that you already have this file. If so we will simply add to it:
vi ~/.profile
- Place the following code inside and save your file. This piece of code will see if you’ve already started ssh-agent. If you haven't already started the process it will start ssh-agent, and store the settings to be usable the next time you start up a shell:
SSH_ENV=$HOME/.ssh/environment
function start_agent {
echo "Initialising new SSH agent..."
/usr/bin/ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
echo succeeded
chmod 600 ${SSH_ENV}
. ${SSH_ENV} > /dev/null
/usr/bin/ssh-add;
}
# Source SSH settings, if applicable
if [ -f "${SSH_ENV}" ]; then
. ${SSH_ENV} > /dev/null
#ps ${SSH_AGENT_PID} doesn’t work under cywgin
ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
start_agent;
}
else
start_agent;
fi
- After saving the file close your terminal and open a new one. You should see something similar to:
Initialising new SSH agent...
succeeded
Identity added: /Users/username/.ssh/id_rsa (/Users/username/.ssh/id_rsa)
Now you should be able to run all your svn commands without any more of those password prompts!