ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Github private repository를 윈도우 PC에서 clone 방법(private key)
    Etc 2025. 5. 30. 23:46

    Github에 내가 만든 private repository를 새로운 PC에서 clone 하는 방법이다. 

    일단 간단하게 말하면 private key를 이용해서 clone 하는 방법이다. (윈도우 기반)

     

    1. private key / public key 준비

    먼저 private key / public key를 준비하자. 

     

    git 을 설치하고 나면, git bash가 함께 설치되는데 git bash를 실행하자. 

    (먼저 git 이 설치되어 있다고 가정한다)

    윈도우 시작버튼에서 git 으로 검색해서 git bash를 실행하자.

     

    git bash 에서 아래 명령을 실행한다.

    그러면 ssh key (private key/public key 를 묶어서 ssh key라고 한다) 를 생성하는 과정을 진행하게 된다.  

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

     

    먼저 key를 저장할 위치를 묻는데, 기본은 C:\Users\YourName\.ssh\id_rsa 가 된다. 

    그냥 Enter를 치면 기본 경로에 저장된다. 

    혹시 2개 이상의 아이디로 접속해야 한다면 이름을 변경해서 저장해주자. 

     

    실행해보면 아래와 같이 나온다. 

    $ ssh-keygen -t rsa -b 4096 -C "me@example.com"
    Generating public/private rsa key pair.

     

    그 다음으로는 passphrase(비밀번호)를 물어보는데, 이는 key 사용 시에 한번 더 비밀번호를 확인할 것인지에 대한 내용이다. 혹시라도 private key가 유출되더라도 비밀번호를 걸어놓으면 더욱 안전할테니 비밀번호를 설정하자. 

    다만, private key 비밀번호를 잊어버리면 다시 찾는 방법이 없어서, 새로운 private/public key를 생성해서 다시 등록하는 방법 밖에 없다. 그러니 잊지 않을만한 적당한 비밀번호를 걸자. 

    Enter file in which to save the key (/c/Users/YourName/.ssh/id_rsa): [엔터] 또는 [새로운이름]
    Enter passphrase (empty for no passphrase): [엔터 또는 비밀번호 입력]
    Enter same passphrase again: [엔터 또는 비밀번호 재입력]

     

    일단 위의 전체 과정을 수행한 모습은 아래와 같다. 

     

    이 과정을 거치면 아래 위치에 2개의 파일이 생긴다. 

    • C:\Users\YourName\.ssh\id_rsa → private key
    • C:\Users\YourName\.ssh\id_rsa.pub → public key

    앗, 지금 확인해보니 기본경로로 만들때는 <본인계정>/.ssh/id_rsa 형태로 생성되지만, 

    파일명을 지정해주면 <본인계정>/id_rsa 로 생긴다. 

    즉, 파일명을 기본 파일명이 아니면 본인 계정 home 폴더에 직접 생긴다. 

     

    이제 private key(id_rsa)와 public key(id_ras.pub)가 생겼다. 

     

    여기서 public key는 github 사이트의 내 계정 setting 쪽에 등록해줘야 하고, 

    private key는 접속하려는 PC에 저장해두면 된다. 

     

    2. public key 를 github에 등록

    이제 생성된 public key를 github에 등록해보자. 

    github 에 본인 계정으로 접속 한 후,

    오른쪽 상단에 계정 아이콘을 누르면 아래와 같이 나오고, 여기서 settings 를 클릭하자. 

    그 후에 Access 항목 중 SSH and GPG keys 를 클릭하자. 

    그러면 SSH keys 를 등록하는 부분이 나온다. 

    New SSH key 를 눌러서 public key를 등록해주자. 

     

    New SSH key 를 누르면 Add new SSH Key 가 나오는데, 

    여기서 먼저 만들어놨던 public key를 넣어주면 된다. 

     

    public key 파일을 메모장에서 열어보면 아래와 같이 보인다. 

    시작은 ssh-rsa 로 시작하고, 끝은 key를 만들때 사용했던 이메일로 끝난다. 

    id_rsa.pub 파일을 메모장에서 열어보자

     

    이 내용 전체를 복사해서 그대로 github의 New SSH Key 부분에 붙여넣기 하자. 

    ssh-rsa 부터 이메일까지 모두 copy & paste 하자.

     

    그러면 public key 등록은 문제없이 될 것이다. 

     

    3. private key 를 이용해서 repository clone

    이제 private key를 이용해서 repository를 clone 하자. 

     

    다시 git bash 로 돌아와서 아래 명령을 실행하자. 

    ssh-agent에 private key를 추가해주는 명령으로 한번만 실행해주면 된다.

    eval $(ssh-agent -s)  # ssh-agent 실행
    ssh-add C:/Users/YourName/.ssh/id_rsa  # private key 추가

     

    이제 git clone 을 수행하자. 

    먼저 repository의 주소를 확인해보자. 

    private key 로 clone 하는 경우는 git@github.com 으로 시작하고 :계정명/repository이름.git 으로 구성된다. 

     

    예를 들면 아래와 같이 구성된다. 

    git@github.com:github_id/repository_name.git

     

    정확한 주소를 확인하고 싶다면 github의 repository 에서 clone 의 SSH에서 알 수 있다. 

     

    그럼 실제로 clone 하기 위해서 터미널이나 git bash 에서 아래 명령을 실행하자. 

    git clone git@github.com:username/private-repo.git

     

    그러면 (있다면)passphrase를 한번 물어보고, repository clone이 될 것이다. 

     

    그럼 오늘은 여기까지!!

    'Etc' 카테고리의 다른 글

    윈도우 터미널(Powershell)에 Anaconda 환경 설정하기  (0) 2025.03.24
    macOS 스크린 캡쳐 방법  (0) 2025.03.02
Designed by Tistory.