1. 添加key到 ssh-agent
打开 git 安装目录 C:\Program Files\Git\etc
, 找到 profile
文件, 管理员身份打开, 在最后追加:
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2=agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add
fi
unset env
保存后再进入 C:\Program Files\Git\etc\profile.d
目录, 打开 aliases.sh
,并添加 alias:
## 下述的 xxx 为你自己的key名称
alias addkey='ssh-add ~/.ssh/xxx'
关闭所有 git-bash
窗口, 重新打开. 输入 addkey
, 然后输入密码, 后续如果不重启, 在使用 git 操作就不用再次输入密码.
$ addkey
Enter passphrase for /c/Users/bozho/.ssh/xxx:
Identity added: /c/Users/bozho/.ssh/gitlab_xy (xylink gitlab)
此时关闭窗口也没问题.
如果有多个key 需要添加 可配置多个 alias.
2. 优化git 使用
2.1 格式化git 日志显示
打开 git-bash
输入:
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset%s%Cgreen(%cr)%C(bold blue)<%an>%Creset' --abbrev-commit"
然后再 git 仓库目录输入命令: git lg
输出格式如下:
2.2 添加常用 alias
在第一章节中提到添加 alias, 可以根据自己的需求 添加不同的 alias,比如:
# 打开当前目录
alias open='explorer.exe .'
# 跳转到某网站
alias jenkins='start http://Jenkins/'
# 跳转到某目录
alias xxxx='cd /D/Code/xxxx/'