不用每次都 -i 指定密钥,且避免连接自动断开

ControlMaster auto
ControlPath ~/.ssh/connection-%r@%h:%p
ControlPersist 4h
ServerAliveInterval 6
ServerAliveCountMax 20
Compression yes Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/github Host hangj
Hostname mydomain.name
User hangj
IdentityFile ~/.ssh/hk

然后 ssh hangj 就可以连上我的服务器

拷贝文件

scp file.txt hangj:~/
scp hangj:~/file.txt ./

简单,高效,省心,关键还防秃~~~

管理多个 github 的 deploy key

在 GitHub 仓库设置好 webhooks,当有新的 push 时,自动发一个 POST 到我的 web 服务器

然后 web 服务器调用一个 shell 脚本自动 pull 最新代码,并重启服务

服务器上只需要 pull 代码,所以没必要专门给它配置一个 robot 用户,这个时候可以用 deploy key,给这个 key 设置好 pull 的权限

把 key 文件保存好,然后在 ~/.ssh/config 文件加上

Host myproject1
HostName github.com
User git
IdentityFile ~/.ssh/github_deploy_myproject1

然后到你的仓库目录下(hangj 是我的用户名)

$ git remote set-url origin git@myproject1:hangj/myrepo.git
$ git remote -v

命令行里的 myproject1 就是 ~/.ssh/config 里的 Host, hangj 是我的用户名

指定 Host,是为了方便管理多个仓库,每个仓库用自己的 deploy key,不会乱

最新文章

  1. paip.判断文件是否存在uapi python php java c#
  2. SQL Server 自定义字符串分割函数
  3. C语言与MATLAB接口 编程与实例 李传军编着
  4. JS中的控制函数调用:call(),apply()和bind()
  5. lintcode 中等题:unique Binary Search Tree 不同的二叉查找树
  6. Android(java)学习笔记127:Android Studio新建工程中的build.gradle、settings.gradle
  7. day-7
  8. JQuery Ajax Options
  9. ACM比赛(进制转换)
  10. Selenium 显示等待和隐式等待
  11. 设计模式的征途—6.建造者(Builder)模式
  12. socket获取百度页面
  13. linux df -i 100%处理
  14. composer 自动加载一 通过file加载
  15. 通过经纬度获取所属城市信息-php
  16. label标签的显示和隐式关联问题
  17. MyBatise代码自动生成时候Oralce的number类型BigDecimal问题
  18. java中可以让程序暂停几秒执行的代码
  19. 1106C程序语法树
  20. swift 音乐播放器项目-《lxy的杰伦情歌》开发实战演练

热门文章

  1. TCP通信简单梳理
  2. Xmanager7 xshell7 xftp7安装破解教程
  3. 每日三道面试题,通往自由的道路14——MySQL
  4. SaltStack 命令注入漏洞(CVE-2020-16846)
  5. azure bash: az: command not found
  6. Tensorflow2对GPU内存的分配策略
  7. Kafka原理笔记
  8. ElasticSearch版本控制--java实现
  9. 嵌入式linux启动过程详解
  10. 用于在公网环境下测试的Telnet/SSH服务器