拉取最新代码
拉取所有远程分支
git fetch --all
重置本地代码到远程 master 分支的最新提交
git reset --hard origin/master
拉取最新代码
git pull
拉取所有远程分支并重置本地代码到远程 master 分支的最新提交并拉取最新代码
git fetch --all && git reset --hard origin/master && git pull
生成密钥
生成默认 RSA 密钥
ssh-keygen -t rsa -C "chaihao@branch-web.com"
生成高安全性自定义 RSA 密钥
ssh-keygen -t rsa -b 4096 -C "chaihao@branch-web.com" -f ~/.ssh/id_rsa_cat
启动 SSH 代理
eval "$(ssh-agent -s)"
添加到 SSH 代理
// 添加单个密钥
ssh-add ~/.ssh/id_rsa_cat
// 添加所有密钥
ssh-add ~/.ssh/*
注意: 执行 ssh-add ~/.ssh/* 提示 Could not open a connection to your authentication agent. 需要执行启动 ssh 代理
查看 SSH 代理
ssh-add -l
测试 SSH 连接
// 测试github连接
ssh -T git@github.com
// 测试gitee连接
ssh -T git@gitee.com
为每个仓库配置单独的 SSH 密钥
修改 ~/.ssh/config 文件
编辑 ~/.ssh/config 文件(如果没有该文件,可以创建它):
nano ~/.ssh/config
添加以下内容
配置 gitee
Host aliasName # 别名
HostName gitee.com
User git
IdentityFile ~/.ssh/repo1_id_rsa
IdentitiesOnly yes
设置 gitee 地址
git remote set-url origin aliasName:username/repo1.git
- 示例:
git@gitee.com:jdcw/app_branch_api.git
将 git@gitee.com 替换成别名
aliasName:jdcw/app_branch_api.git
git remote set-url origin aliasName:jdcw/app_branch_api.git
配置 github
Host aliasName # 别名
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_cat
IdentitiesOnly yes
配置 gitlab
Host aliasName # 别名
HostName gitlab.com
User git
IdentityFile ~/.ssh/id_rsa_cat
IdentitiesOnly yes
测试连接
ssh -T repo1
ssh -T repo2
ssh -T repo3