Questo è quello che ho fatto:mio file .bashrc non eseguito all'avvio Git Bash (Windows 7)
cd ~
touch .bashrc
notepad .bashrc
e il contenuto del mio .bashrc è (che si trova sul web da qualche parte):
SSH_ENV="$HOME/.ssh/environment"
# start the ssh-agent
function start_agent {
echo "Initializing new SSH agent..."
# spawn ssh-agent
ssh-agent | sed 's/^echo/#echo/' > "$SSH_ENV"
echo succeeded
chmod 600 "$SSH_ENV"
. "$SSH_ENV" > /dev/null
ssh-add
}
# test for identities
function test_identities {
# test whether standard identities have been added to the agent already
ssh-add -l | grep "The agent has no identities" > /dev/null
if [ $? -eq 0 ]; then
ssh-add
# $SSH_AUTH_SOCK broken so we start a new proper agent
if [ $? -eq 2 ];then
start_agent
fi
fi
}
# check for running ssh-agent with proper $SSH_AGENT_PID
if [ -n "$SSH_AGENT_PID" ]; then
ps -ef | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null
if [ $? -eq 0 ]; then
test_identities
fi
# if $SSH_AGENT_PID is not properly set, we might be able to load one from
# $SSH_ENV
else
if [ -f "$SSH_ENV" ]; then
. "$SSH_ENV" > /dev/null
fi
ps -ef | grep "$SSH_AGENT_PID" | grep -v grep | grep ssh-agent > /dev/null
if [ $? -eq 0 ]; then
test_identities
else
start_agent
fi
fi
In qualche modo questo script non viene eseguito affatto. Non vedo nessuna delle stringhe da far eco. Conosco la linea di comando di Unix in Linux e Mac OS X, ma non ho idea di come funzioni in Windows. Qualche suggerimento per favore?
MODIFICA: Ok, il mio errore ... questo script è stato eseguito, ma non capisco perfettamente cosa faccia. Speravo di evitare di essere richiesto per passphrase ogni volta che spingo al repo remoto. Così com'è ora mi viene comunque chiesto ogni volta.
Questo file '.bashrc' è totalmente UNIX. Cosa stai cercando di ottenere con il tuo git bash? – favoretti
Ho menzionato il mio ragionamento per questo alla fine della mia domanda dopo aver modificato la mia domanda. Come posso raggiungere questo obiettivo? Non ho una piena comprensione di come funziona SSH. – codedog