我可以在 TortoiseGit 全局(不是每个存储库)注册 PuTTY 密钥吗?

dav*_*one 1 windows git putty tortoisegit pageant

我熟悉使用 TortoiseGit + PuTTY 访问远程,您可以通过以下方式设置用于给定远程的 PuTTY 密钥:

  • 设置窗口中的远程节点
  • 文件.git\config...
[remote "upstream"]
url = git@gitlab.com:name/project.git
fetch = +refs/heads/*:refs/remotes/upstream/*
puttykeyfile = C:\\Users\\name\\Documents\\key.ppk
Run Code Online (Sandbox Code Playgroud)

...并获得选美集成等的好处。

这在本地开发环境中按预期工作。但是,我们现在在共享位置共享暂存存储库\\server\share\myrepo,以便任何团队成员都可以根据需要更新该存储库。这意味着我们无法将puttykeyfile值存储在 中\\server\share\myrepo\.git\config,因为每个团队成员的值都是唯一的。

是否可以puttykeyfile%USERPROFILE%\.gitconfig特定于用户而不是特定于存储库的其他地方定义“全局”?

mic*_*has 5

无需.git/config手动编辑。该git config命令具有 --system--global、 和 等选项--local

  • “本地”意味着“为该存储库设置”。
  • “全局”意味着“为该用户的所有存储库设置”。
  • “系统”的意思是“为该计算机的所有用户设置”。

因此,您可以通过以下方式设置您的值:

git config --global remote.upstream.puttykeyfile C:\\Users\\name\\Documents\\key.ppk
Run Code Online (Sandbox Code Playgroud)

但是(如上所示)密钥文件是按遥控器配置的。也许你应该给你的上游/原始远程一个更好的名字,比如“github”或“gitlab”。然后你可以为 github 指定一个密钥,为 gitlab 指定一个密钥,一切都会正常工作。