我有几个不同的 git 用户,每个用户负责不同的 git 仓库,每个用户都有不同的 ssh 密钥对,每个 git 用户都有自己版本的文件,~/.gitconfig
但有时我会错误地发出
git add foo
使用错误的 git 用户(错误的文件符号链接到文件~/.gitconfig
),这会切断对给定 git repo 的可见更改
git log
我想避免...git push
正确失败,但git add
可以由未经身份验证的 git 用户执行
我仅使用 ssh 密钥对 git repo 进行身份验证...为了在不同的 git 用户之间切换,我删除了符号链接,然后重新创建符号链接
~/.gitconfig
指向特定于给定 git 用户的各种 git 配置文件之一,所有这些都类似于
[user]
email = [email protected]
name = Hare Bere
[color]
ui = true
[push]
default = simple
[alias]
co = checkout
[url "ssh://[email protected]/"]
insteadOf = https://github.com/
[core]
sshcommand=ssh -i ~/.ssh/foobar
[pull]
rebase = false
为了在不同的 git 用户之间切换,我改变了文件~/.gitconfig
指向的位置,然后运行
ssh-add path-to-ssh-key
我在一台 Ubuntu 笔记本电脑上
我缺少什么来隔离每个 git 用户,使其无法针对错误的 repo 发出 git 命令?