IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    git切换马甲

    est发表于 2023-06-26 16:27:28
    love 0

    如果你有多个 github、bitbucket、gitlab 账号需要来回切换,那么这个方法或许对你有用。

    使用git你需要配置一个 ~/.ssh/id_rsa,如果你有多个身份就麻烦了。传统网上搜到的办法是编辑 ~/.ssh/config 然后加入个类似这样的配置:

      Host estgit
      HostName github.com
      Port 22
      User git
      IdentityFile ~/.ssh/est_github
      IdentitiesOnly yes
    

    这样做也不是不行,就是你输入命令的时候得把主机名改了。比如

    git clone git@github.com:est/aether-pelican.git

    你需要改成

    git@estgit:est/aether-pelican.git

    当然这还不是最蛋痛的。最蛋痛的是如果你用了 git submodules 那么你切换马甲变得非常麻烦。因为别人用你的项目没法解析 git@estgit 这样的玩意。

    我研究出来了一个hack,直接改repo的 .git/config 可以达到同样的效果。比如

      [core]
          sshCommand = /usr/bin/ssh -o IdentitiesOnly=yes -i ~/.ssh/est_github -a
      [user]
          name = est
          email = ...@...
    

    这样你可以随意在不同的repo切换n个 ssh identity 身份。



沪ICP备19023445号-2号
友情链接