[Github Cli] 리포지토리 생성 자동화: 웹사이트에 접속하지 않고 프로젝트 설정

Github CLI를 사용하여 웹사이트에 접속하지 않고 깃허브 리포지토리를 생성하는 방법을 알아보자.

Github CLI 설치

Github CLI는 터미널에서 Github를 사용할 수 있도록 도와주는 명령줄 도구이다. 다음과 같이 설치할 수 있다

macOS에서

bash
brew install gh

Windows에서

bash
scoop install gh

Linux에서

bash
sudo apt install gh

이러한 명령어를 사용하여 Github CLI를 시스템에 설치할 수 있다.

리포지토리 생성

Github CLI를 사용하면 새로운 리포지토리를 손쉽게 생성할 수 있다. 다음 단계를 따라보자

1. 인증

먼저, 다음 명령을 실행하여 Github 계정을 인증해보자

bash
gh auth login

2. 새 리포지토리 생성

다음 명령을 사용하여 새 리포지토리를 생성할 수 있다:

bash
gh repo create my-new-repo --public

출력 결과

bash
✓ Created repository user/my-new-repo on GitHub

이 명령은 'my-new-repo'라는 공개 리포지토리를 인증된 계정 아래 생성한다.

3. 코드 푸시

새로 생성된 리포지토리에 코드를 푸시하려면 다음 명령을 사용해보자:

bash
git push origin main

이 명령은 코드를 'main' 브랜치에 푸시한다.

Github CLI를 이용한 프로젝트 생성 자동화

새 프로젝트 설정은 종종 새 디렉터리 생성, 로컬 깃 리포지토리 초기화 및 Github와 연결 같은 반복적인 작업을 수반한다. 이러한 작업을 간소화하기 위해 macOS, Linux 및 Windows용 자동화 스크립트를 개발했다. 이 스크립트는 여러 단계를 하나로 결합하여 새 프로젝트를 빠르게 시작할 수 있는 편리한 방법을 제공한다.

스크립트 사용의 장점

  1. 시간 절약: 디렉터리 생성이나 리포지토리 초기화와 같은 수동 작업이 필요하지 않는다.
  2. 일관성: 모든 프로젝트가 동일한 설정과 구조를 따르도록 보장한다.
  3. 사용 편의성: 간단한 명령으로 여러 설정 단계를 실행한다.
  4. 크로스 플랫폼: macOS, Linux 및 Windows용 별도 스크립트가 각 환경에 맞게 제공된다.

macOS 및 Linux용 자동화 스크립트

macOS 및 Linux 사용자는 다음 bash 스크립트를 사용하여 프로젝트 디렉터리 생성, 로컬 Git 리포지토리 초기화, Github 리포지토리 생성 및 연결 과정을 간소화할 수 있다.

bash
#! /bin/bash

echo 현재폴더에 프로젝트를 생성하고 클라우드 git 및 github에 연결 합니다.
echo 프로젝트 이름을 입력 해 주세요: "("취소하려면 엔터")"
read PROJECT_NAME

if [ ! -n "$PROJECT_NAME" ]; then
  exit 1
fi

LOCAL_PATH=$(pwd)/$PROJECT_NAME

echo $LOCAL_PATH "에 프로젝트를 생성 합니다. 맞으면 'yes' 아니면 아무키나 입력 해 주세요"
read CREATE

if [ -n "$CREATE" ]; then
  if [ $CREATE == yes ]
  then
    # 비공개 깃허브 리포지토리 생성
    gh repo create $PROJECT_NAME --private

    # 로컬 프로젝트 생성
    mkdir "$LOCAL_PATH"
    cd "$LOCAL_PATH"
    echo "# "$PROJECT_NAME >> README.md

    # 깃 초기화 및 깃허브와 연결
    git init
    git remote add github [email protected]:USERNAME/$PROJECT_NAME
    git add .
    git commit -m "initial commit"
    git push github master
  fi
fi

스크립트 실행

  1. .sh 확장자로 스크립트를 저장한다. 예: create-project-with-git.sh.
  2. 터미널을 연다.
  3. 새 프로젝트를 생성할 디렉터리로 이동한다.
  4. 원하는 프로젝트 폴더가 생성될 위치로 이동한 다음, 스크립트의 전체 경로를 사용하여 스크립트를 실행한다. 예를 들어, sh /path/to/your/script/create-project-with-git.sh와 같이 실행한다.
  5. 터미널에서 나타나는 메시지를 따른다.

예시

bash
cd /path/to/your/project/directory
sh /path/to/your/script/create-project-with-git.sh

Windows용 자동화 스크립트

Windows 사용자는 PowerShell 스크립트를 사용하여 동일한 기능을 달성할 수 있다. 이 스크립트는 프로젝트를 로컬로 생성하고 깃허브와 연결하는 작업을 수행한다.

powershell
# 프로젝트 이름 입력 받기
Write-Host '현재폴더에 프로젝트를 생성하고 클라우드 git 및 github에 연결 합니다.'
Write-Host '프로젝트 이름을 입력 해 주세요: (취소하려면 엔터)'
$PROJECT_NAME = Read-Host

if ([string]::IsNullOrWhiteSpace($PROJECT_NAME)) {
    exit
}

$LOCAL_PATH = (Get-Location).Path + "/" + $PROJECT_NAME

Write-Host $LOCAL_PATH "에 프로젝트를 생성 합니다. 맞으면 'yes' 아니면 아무키나 입력 해 주세요"
$CREATE = Read-Host

if ($CREATE -eq 'yes') {
    # 비공개 깃허브 리포지토리 생성
    gh repo create $PROJECT_NAME --private

    # 로컬 프로젝트 생성
    mkdir $LOCAL_PATH
    Set-Location $LOCAL_PATH
    echo "# "$PROJECT_NAME > README.md

    # 깃 초기화 및 깃허브와 연결
    git init
    git remote add github [email protected]:USERNAME/$PROJECT_NAME
    git add .
    git commit -m "initial commit"
    git push github master
}

스크립트 실행

  1. .ps1 확장자로 스크립트를 저장한다. 예: create-project-with-git.ps1.
  2. PowerShell을 연다.
  3. 새 프로젝트를 생성할 디렉터리로 이동한다.
  4. 프로젝트 폴더를 생성하고자 하는 위치로 이동한 후, 스크립트의 전체 경로를 사용하여 스크립트를 실행한다. 예를들어, PowerShell에서 C:\path\to\your\script\create-project-with-git.ps1와 같이 실행하면 된다.
  5. PowerShell에서 나타나는 메시지를 따른다.

예시

powershell
cd "C:\path\to\your\project\directory"
C:\path\to\your\script\create-project-with-git.ps1

이러한 자동화 스크립트는 편의뿐만 아니라, 워크플로우를 최적화하고 다양한 프로젝트 간 일관성을 유지하고자 하는 개발자에게 필수적인 도구이다. 이러한 스크립트를 개발 프로세스에 통합하여, 반복적인 설정 작업보다는 코딩에 집중할 수 있으며 전반적인 생산성을 향상시킬 수 있다.


깃허브 CLI를 사용하면 깃허브 웹사이트에 접속하지 않고도 리포지토리를 생성하고 관리하는 과정이 간소화된다. 이를 통해 개발 워크플로우를 최적화하고 프로젝트 관리 능력을 향상시킬 수 있다.


자주 묻는 질문

  1. 깃허브 CLI는 모든 플랫폼에서 사용할 수 있나요? 네, 깃허브 CLI는 macOS, Windows 및 Linux에서 사용할 수 있다.
  2. 깃허브 CLI를 사용하여 비공개 리포지토리를 생성할 수 있나요? 물론이다. 리포지토리 생성 명령에서 --public--private로 바꾸세요.
  3. 깃허브 CLI를 사용하여 리포지토리를 클론하는 방법은 어떻게 되나요? gh repo clone <repository> 명령을 사용하여 리포지토리를 클론할 수 있다.
  4. 깃허브 CLI로 이슈와 풀 리퀘스트를 관리할 수 있나요? 네, 깃허브 CLI를 사용하여 명령줄에서 이슈와 풀 리퀘스트를 관리할 수 있다.
  5. 깃허브 CLI는 무료로 사용할 수 있나요? 깃허브 CLI는 오픈 소스 도구이며 무료로 사용할 수 있다.
© Copyright 2023 CLONE CODING