一个repo关联多个git
其实挺简单的,网上说的改什么.git/config文件并不准确,还挺有误导性的。过程简单如下。怎么装git就不说了。 使用多个git账号的关键是需要让git的ssh认证能同时支持多个git。我们知道git认证是通过.ssh/id_rsa密钥来进行的。而如果同时用多个git,那么必然需要生成多个密钥对。所以生成密钥的时候,不能都用默认的密钥对的名字id_rsa,需要加以区分,比如加后缀名: # ssh-keygen -t rsa -C "your_email@youremail.com" 我们一般是一路回车按到底,但对于多个git,在屏幕回显生成密钥对文件名时,需要自定义一下,否则都用默认的id_rsa,那么后面的就会覆盖掉前面的 >Generating public/private rsa key pair. Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<press enter> 这里不要用默认的文件名,自定义一个新的文件名,比如输入 /Users/your_user_directory/.ssh/id_rsa _github 后面的可以一路回车按到底 同理,下一个git需要生成密钥对的时候,也在这里改一下默认文件名,比如 /Users/your_user_directory/.ssh/id_rsa _company 但是这样有个问题,回头做push/pull的时候,因为git默认是去找.ssh/id_rsa,所以找不到id_rsa会报认证失败。所以还必须让git知道哪个git应该用哪个密钥。还是在.ssh目录下,有个config文件,编辑此文件,有几个git就加几个section。注意是改./ssh下的config,不是像很多网上文章说的那样改.git下的config。config的例子: Host company HostName git.company.com ...