로컬 환경(Host Windows 또는 Linux)에서 깃 원격 저장소(Git Remote Repository)에 신규 저장소 생성하기

Github page의 UI를 사용하지 않고 Host CLI로 원격 저장소를 생성한다.

필요정보

  • curl을 사용하여 Github API로 Remote Repository를 생성함
  • 원격에서 Github API를 사용하기 위해, 사용자 토큰(User Token)을 Github에서 발급 필요

Token 생성

  • 사용자 Profile → Settings → Developer settings → Personal access tokens
  • 신규 토큰 생성은 Generate new token
    • Select scopes는 repo 부분만 전체 체크
  • 기존 토큰 재생성은 토큰명 선택후, Regenerate token
  • 생성된 토큰을 API Call에 사용함
  • 참조 스크린샷
    doit_django_09

    doit_django_02

    doit_django_03

    doit_django_04

API 사용

[참조]githubapi-Create an organization repository

  • API 동작 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
curl -i -u cmaven:${user_token} https://api.github.com/user

'''
example
'''
E:\Coding\Python\doit_djngo>curl -i -u cmaven:${user_token} https://api.github.com/user
HTTP/1.1 200 OK
Server: GitHub.com
Date: Thu, 25 Aug 2022 03:01:21 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 1264
Cache-Control: private, max-age=60, s-maxage=60
Vary: Accept, Authorization, Cookie, X-GitHub-OTP
# ...
  • Remote Repository 생성
    • name은 생성할 저장소 이름
    • privatetrue로 설정 시, 비공개 저장소를 생성함
1
2
3
4
5
6
7
8
9
'''
Windows 환경의 cmd
'''
curl -i -u cmaven:${user_token} https://api.github.com/user/repos -d "{\"name\":\"doit_django\", \"private\":\"true\"}"

'''
Linux 환경의 bash-shell
'''
curl -i -u cmaven:${user_token} https://api.github.com/user/repos -d '{"name":"doit_django", "private":"true"}'
  • 생성 예

doit_django_08

  • 생성모습

doit_django_07