如何让单个Git仓库在同一会话中使用独立凭证(TortoiseGit环境)
同一Git仓库单独设置推送凭证(不改动全局配置)
当然可以!完全不用动你朋友电脑的全局Git配置,咱们给项目B的仓库单独配置专属推送凭证就行,完美适配你用的TortoiseGit 2.5 + Git for Windows 2.14(wincred)环境。
下面给你两种操作方式,选顺手的来:
方法一:用Git命令行操作
- 打开项目B的本地仓库文件夹,右键选择「Git Bash Here」(TortoiseGit自带的Git终端)
- 先给当前仓库单独设置凭证助手为wincred(只作用于这个仓库,不影响全局):
git config --local credential.helper wincred - 接下来正常执行推送操作(比如
git push origin main),第一次推送时会弹出wincred的凭证输入框,输入你项目B的账号密码即可——这个凭证只会被存在该仓库的本地配置里,和朋友的全局凭证完全隔离。
方法二:用TortoiseGit图形界面操作
如果你更习惯可视化操作,直接用TortoiseGit的设置就能搞定:
- 右键项目B的仓库文件夹,选择「TortoiseGit」→「Settings」
- 在左侧导航栏依次展开「Git」→「Credential」
- 在「Credential helper」下拉框选择「wincred」,关键:一定要把上方的配置范围改成「Local」(仓库级),不要选「Global」(全局)
- 点击「OK」保存设置
- 第一次推送项目B时,TortoiseGit会自动弹出凭证输入窗口,输入你的项目B账号密码,后续推送就会自动用这个凭证了,完全不会干扰朋友的项目A配置。
补充说明
这样设置后,朋友的项目A依然使用他的全局wincred凭证,你的项目B用仓库专属的凭证,两者互不影响,而且全程没改动他电脑的全局设置,完全符合你的需求~
内容的提问来源于stack exchange,提问作者PPC




