같은 컴퓨터에 여러 개의github 계정을 설정합니다 (리셋 URL을 변경할 필요가 없습니다)
Github는 SSH 프로토콜과 RSA 암호 시스템을 사용하여 컴퓨터를 검증합니다.새 SSH 키를 생성하면 두 개의 키 - 개인 키 및 공개 키가 생성됩니다.github 계정에 공개 키를 추가해야 하지만, 개인 키를 컴퓨터에 남겨 두십시오.public-key cryptography here에 대한 더 많은 정보를 읽을 수 있습니다.
SSH 키를 생성하여 github 계정에 추가한 경우 skip this section입니다.
SSH 키를 생성하여 github 계정에 추가합니다.
기존 키 확인
ls -al ~/.ssh
을 실행하여 시스템에 SSH 키가 있는지 확인합니다.기본적으로 공개 키의 파일 이름은 id_rsa
으로 시작하여 .pub
으로 끝납니다.ssh-add -D
을 실행하여 키를 삭제할 수 있습니다.수동으로 추가된 키만 삭제되므로 문제가 발생하면 stackoverflow answer을 보십시오.SSH 키가 있는 폴더로 이동해야 합니다. 터미널에서 open ~/.ssh
을 실행하고 덮어쓰기 전에 복사본을 저장합니다.터미널에서 실행
ssh-keygen -t rsa -f ~/.ssh/id_rsa -C "[email protected]"
같은 이름의 기존 키를 덮어쓰려면 y
을 입력합니다.덮어쓰지 않으려면 n
을 입력하고 새 파일 이름으로 위 명령을 다시 입력하십시오.id_rsa
을 id_rsa_PERSONAL
과 유사한 다른 내용으로 변경하기만 하면 됩니다.id_rsa
과 공개 키 id_rsa.pub
을 생성합니다.id_rsa.pub
을 실행하여 공개 키 pbcopy < ~/.ssh/id_rsa.pub
을 복사합니다.open ~/.ssh
을 실행하고 id_rsa.pub
파일을 코드 편집기로 드래그하고 파일 내용을 복사하여 SSH 키 디렉터리를 열 수도 있습니다.브라우저에서 오른쪽 상단의 개인 정보 그림을 누르면github 계정의 설정으로 이동합니다.
사용자 설정 사이드바에서
SSH and GPG keys
을 클릭합니다.New SSH key
클릭복사된 공개 키를 키 필드에 붙여넣고 제목을 지정합니다.
Add SSH key
을 클릭합니다.id_rsa_COMPANY
과 같은 다른 이름을 제공해야 합니다.이상 코드 구간의
SSH 구성 설정
cd ~/.ssh
.ls config
. If you see ls: config: No such file or directory
, create a new config file by running touch config
.Paste the following into the file:
Host github.com
HostName github.com
User git
IdentitiesOnly yes
AddKeysToAgent yes
UseKeychain yes
Match Host github.com !exec "pwd | grep '/COMPANY' > /dev/null"
IdentityFile ~/.ssh/id_rsa
Match Host github.com exec "pwd | grep '/COMPANY' > /dev/null"
IdentityFile ~/.ssh/id_rsa_$COMPANY
Source.UseKeychain
을 yes로 설정하면 암호 구문이 열쇠고리에 저장되므로 매번 다시 입력할 필요가 없습니다.exec "pwd | grep '/COMPANY' > /dev/null"
현재 폴더가 COMPANY
폴더에 중첩되어 있는지 확인합니다.만약 그렇다면, id_rsa_$COMPANY
SSH 키를 사용하고, 그렇지 않으면 기본 SSH 키를 사용합니다.[1]chmod 600 ~/.ssh/config
을 실행합니다.사용자를 설정합니다.이름과 사용자.전자 우편
이제 SSH 키가 설정되어 사용자를 구성해야 합니다.이름과 사용자.전자 메일 변수.이것은 제출 대상의 author와committer 필드의 결과를 결정합니다.이 옵션을 설정하지 않으면 작업 디렉터리로 전송할 수 있지만, 제출에 작업 이메일과 이름이 포함되기를 원한다면
.gitconfig
개의 파일이 설정되어 있습니다..gitconfig
을 실행하여 루트 디렉터리에 기존 ls ~/.gitconfig
이 있는지 확인합니다.없으면 touch ~/.gitconfig
을 실행하여 하나를 만듭니다.루트 디렉터리에
.gitconfig
을 열고 개인git 사용자 이름과 이메일을 추가합니다.또한 includeIf
경로를 포함하여git가 서로 다른 .gitconfig
을 사용하여 작업 환매를 진행하도록 알려줍니다.# ~/.gitconfig
[user]
email = [email protected]
name = your-user-name
[user]
email = [email protected]
name = your-user-name
[includeIf "gitdir:~/PATH/TO/WORK/DIR/RELATIVE/TO/ROOT"]
path = ~/PATH/TO/WORK/DIR/RELATIVE/TO/ROOT/.gitconfig
작업 디렉토리의
.gitconfig
에 작업 전자 메일과 작업 사용자 이름을 추가합니다.# ~/PATH/TO/WORK/DIR/RELATIVE/TO/ROOT/.gitconfig
[user]
email = [email protected]
name = your-work-user-name
[1] 주:
exec "pwd | grep '/COMPANY' > /dev/null"
의 상세한 분류:pwd
은 print working directory
을 대표한다.|
은 왼쪽 명령의 표준 출력을 받아들여 표준 입력으로 오른쪽 명령으로 전송합니다.grep
은 일반 텍스트에서 일치하는 항목을 검색합니다.>
은 이전 명령의 결과를 오른쪽의 파일로 다시 지정합니다./dev/null
은 모든 기록된 데이터가 버려지는 블랙홀입니다./dev/null
here에 대한 더 많은 정보를 읽으십시오.따라서 이 명령의 기본 뜻은 현재 작업 디렉터리를 가져와
COMPANY
이름을 검색하고 반환 값을 포기하는 것입니다.이 명령의 종료 코드는 어떤 SSH 키를 사용할지 결정합니다.
Reference
이 문제에 관하여(같은 컴퓨터에 여러 개의github 계정을 설정합니다 (리셋 URL을 변경할 필요가 없습니다)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sammm/setting-up-multiple-github-accounts-on-the-same-computer-without-having-to-change-the-repo-url-1007텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)