한 컴퓨터에서 여러 GitHub 계정 사용

4302 단어
이 기사에서는 두 계정의 예를 사용하지만 매우 쉽게 여러 계정으로 확장할 수 있습니다.

첫 번째 단계는 다음 명령으로 수행할 수 있는 ssh 키를 만드는 것입니다.

ssh-keygen -t ed25519 -C "[email protected]"
ssh-keygen -t ed25519 -C "[email protected]"

-C "[email protected]"는 끝에 이메일 주소나 공개 키를 추가합니다. -C 옵션은 공개 키 끝에 주석을 추가하는 것입니다. 그래서 그것은 당신이 좋아하는 무엇이든 될 수 있습니다.

또한 참고-t ed25519는 공개 및 개인 키를 만드는 데 사용되는 알고리즘을 지정합니다. ed25519 또는 Edwards-curve 디지털 서명 알고리즘은 ssh 키 생성을 위한 4세대 프로토콜입니다. 이 옵션을 설정하지 않으면 기본적으로 RSA 알고리즘을 사용하여 키 쌍을 생성합니다.

이제 다음 메시지가 표시됩니다.

Enter file in which to save the key (/home/{username}/.ssh/id_ed25519):


나는 당신이 /home/{username}/.ssh/personal와 같은 위치와 함께 개인화된 이름을 제공하는 것을 추천하고 직장 하나/home/{username}/.ssh/work도 마찬가지
홈 디렉토리에는 공개 키가 포함된 personal.pubwork.pub 및 개인 키가 포함된 personal , work가 있는 .ssh 폴더가 표시됩니다.

이제 다음 명령을 사용하여 ssh-agent를 시작해야 합니다.

eval $(ssh-agent)


ssh-agent가 한 번 환경 변수로 설정할 수 있는 변수 묶음을 출력하기 때문에 그렇게 합니다eval. 이것은 삶을 더 쉽게 만들어 주므로 좋은 습관입니다. 자세한 내용은 여기link에서 확인할 수 있습니다.

이제 개인 키를 ssh-agent에 추가할 수 있으므로 작업을 수행할 때마다 암호를 입력할 필요가 없습니다.

ssh-add ~/.ssh/personal
ssh-add ~/.ssh/work


이에 대한 암호를 입력하라는 메시지가 표시됩니다. 다음을 수행하여 키가 추가되었는지 확인할 수 있습니다.

ssh-add -l


이제 공개 키를 GitHub 계정에 추가해야 합니다. 참고로 좋은 link입니다.
GitHub로 이동하여 오른쪽 상단 모서리에 있는 프로필을 클릭하고 설정으로 이동합니다.
아래로 스크롤하면 옵션New SSH key이 표시됩니다. 해당 녹색 버튼을 클릭하고 적절한 키를 추가합니다. 다음과 같이 키를 복사할 수 있습니다.

pbcopy < ~/.ssh/personal.pub

personal.pub 파일의 내용을 복사했습니다. 이것을 새 ssh-key로 GitHub 계정에 붙여넣을 수 있습니다. 더 잘 기억하기 위해 GitHub에서 제목을 지정할 수 있습니다.

이제 Add SSH key 버튼을 누르기만 하면 GitHub에 공개 키가 추가됩니다. 각 계정에 두 키를 모두 추가했다고 가정하고 두 계정에서 작동하도록 ssh 및 git 구성을 설정해 보겠습니다.

홈 디렉토리에서 .ssh로 이동합니다. 기존config 파일이 있는지 확인하십시오. 없는 경우 새로 만드십시오. 다음과 같은 것을 만들어야 합니다.

# Default github account: work-account
Host github.work.com
   HostName github.work.com
   IdentityFile ~/.ssh/work
   IdentitiesOnly yes

# Other github account: personal-account
Host github.com
   HostName github.com
   IdentityFile ~/.ssh/personal
   IdentitiesOnly yes

#로 시작하는 줄은 주석일 뿐이며 구성에 영향을 주지 않습니다. 사용된 플래그IdentitiesOnly는 ssh-agent가 IdentityFile에서 제공하는 특정 키를 가리키는 데 사용됩니다.

이제 우리는 git configs를 분리하려고 합니다. 여기에서 스타일을 선택할 수 있습니다. 저에게는 ~/personal 폴더를 제외한 모든 곳에서 직장 계정을 사용하는 것을 좋아합니다. 여기서는 혼동을 피하기 위해 최소.gitconfig를 사용하지만 멋을 더할 것입니다.

아직 없는 경우 홈 디렉터리에 .gitconfig 파일을 만듭니다.

[user]
    email = [email protected]
    name = Your Name


[includeIf "gitdir:~/personal/"]
    path = ~/personal/.gitconfig-pers


이 파일에서 기본 이름, 이메일을 설정하고 ~/personal/에 있는 경우 load gitconfig from ~/personal/.gitconfig-pers를 사용하는 조건을 설정합니다.

이제 ~/personal/.gitconfig-pers를 생성해야 합니다.

[user]
    email = [email protected] 
        name = Your Name


이 파일은 ~/personal에 있을 때 이메일과 이름을 재정의합니다.
변경 사항은 ~/personal/ 내부의 디렉토리에 적용됩니다. 즉, 구성이 작동했는지 확인하려면 다음과 같은 테스트 폴더를 만드십시오~/personal/test.
여기에 입력하면

git config --get user.email


개인 이메일을 받게 됩니다. 내부 하위 폴더~/personal/를 제외하고 동일한 명령을 실행할 때 업무용 이메일을 받게 됩니다.

새로운 설정을 즐기세요!

좋은 웹페이지 즐겨찾기