这是我所做的:
cd ~
touch .bashrc
notepad .bashrc
我的.bashrc文件的内容是从网上某处找来的:
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
某种方式,那个脚本根本没有被执行。我看不到应该被回显的任何字符串。我熟悉Linux和Mac OS X下的Unix命令行,但我不知道它在Windows下如何工作。请问有什么建议吗?
编辑:好吧,是我的错误...这个脚本被执行了,但我不完全理解它的作用。我希望能防止每次推送到远程库时都被要求输入密码。现在我仍然每次都被要求。
.bashrc
完全只适用于UNIX系统。你在git bash中使用它的目的是什么? - favoretti