目前我使用github还有公司的gitlab,而github上对应的是我的QQ号,gitlab对应的是公司的账号。而且我不想在Github上添加公司的账号来获取的密钥。
解决问题: 参考网上文章,本地写了config文件
# gitlab
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa(对应公司的账号)
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa2(我的QQ号)
情况说明:
1.出现的问题,目前公司提交的name居然是我的QQ信息,但是gitlab上添加的SSH key是公司对应账号生成的。(估计逻辑有点混乱)
2.我查看本地的配置cat ~/.gitconfig 是我QQ号对应的信息!
问题: 为什么gitlab上配置了公司账号的.ssh key,提交代码的时候还会显示QQ账号的信息?难道gitlab没有权限验证吗
푸시와 커밋의 차이점을 이해하지 못할 수도 있습니다
push
은 로컬 라이브러리를 원격 끝에 푸시하는 데 사용되며 권한이 필요합니다.sshkey
는 푸시 권한이 있는지 확인하는 데 사용됩니다.commit
은 변경 사항을 로컬 창고에 제출하는 것뿐입니다. . 권한이 필요하지 않습니다..gitconfig
안에 들어있는 사용자 이름과 이메일 주소는commit
작성자에 해당하는 정보일 뿐입니다. 권한 제어 기능은 없으며 임의로 지정하실 수 있습니다.git config user.name
현재 저장소의 사용자 이름 구성을 볼 수 있습니다.git log
과거 커밋을 제출하는 데 사용된 이메일 주소와 사용자 이름을 확인할 수 있습니다.
에서 상속됩니다.~/.gitconfig
은 git 전역 구성입니다. 프로젝트에 별도의 구성이 없으면 구성 파일해결책: 회사 프로젝트에서 별도로 구성
으아아아사실 이는 여전히 혼란을 야기하기 쉽습니다. 새로운 회사 프로젝트가 있고 회사 이메일을 구성하는 것을 잊어버리면 비슷한 상황이 발생합니다. 이런 식으로, 전역 구성을 삭제하는 것이 가장 좋습니다. 새 프로젝트가 있을 때마다 사용자 이름과 이메일을 구성할 수 없습니다.
위층에 게시된 보충 지침
으아아아