Introduction

github에 있는 repository를 내 컴퓨터로 가져와서 작업하고 싶을 때, clone을 사용하면 해당 repository를 내 컴퓨터(local)로 복제할 수 있다.

Background

local repository(로컬 저장소)

내 컴퓨터에 있는, git이 관리하는 디렉토리

  • 주의) 단순히 내 컴퓨터에 있는 디렉토리라고 해서 모두 로컬 저장소로 부르는 것이 아니다. 즉, 일반 디렉토리와 로컬 저장소는 다르다!
  • 일반 디렉토리: git으로 초기화되지 않은 일반적인 디렉토리
  • 로컬 저장소: git으로 초기화(git init)된 디렉토리
  • ex) 내 local 컴퓨터에 있는 프로젝트 폴더: C:\Users\yedin\OneDrive\바탕 화면\github-project이라는 디렉토리에서 git init을 하면 이 디렉토리는 일반 디렉토리에서 git이 관리하는 local repository가 된다.

git init을 하면 해당 명령어를 실행한 디렉토리에 .git이라는 숨겨진 디렉토리가 생성된다. .git 디렉토리란 git이 버전 관리 정보, 설정 파일, 히스토리 등을 저장하는 곳으로, 이 디렉토리가 존재하기 때문에 git이 관리하는 local repository로 인식되는 것이다.

  • local이란 내 컴퓨터를 의미한다!

remote repository(원격 저장소)

github와 같은 인터넷 상의 서버에 위치한 저장소

  • ex) github repository: https://github.com/yejinyeo/donut와 같이 url로 접근할 수 있는 저장소

pull & push 명령어

  • pull: remote repository -> local repository로 최신 변경 사항을 가져오는 명령어 (가져오기)
  • push: local repository -> remote repository로 변경 사항을 업로드하는 명령어 (올리기)

clone이란?

remote repository를 내 local로 복제하는 것

  • clone을 하면 원격 저장소에 있는 모든 file, folder, commit 기록 등이 local에 그대로 복제된다.
  • clone한 로컬 저장소는 원본 저장소(remote repository)와 연결된 상태로, 작업 후 변경사항을 원본 저장소에 push하거나 pull하여 동기화할 수 있다.

fork와 clone의 차이점

차이점

fork

  • remote -> remote repository로 복사 (github 계정 간)
  • 용도: 주로 open source project에 기여하거나, 원본 저장소를 기반으로 자신의 버전을 개발하고자 할 때

clone

  • remote -> local repository로 복사 (github에서 내 컴퓨터로)
  • 용도: project를 가져와서 작업할 때

clone하는 방법

  • GitHub Desktop을 git program(git을 위한 프로그램)으로 사용할 것이다.
    (CLI로도 진행이 가능하지만, 기본적인 기능만 사용할 것이기 때문에 GUI를 제공하는 GitHub Desktop을 사용하기로 했다.)
  • GitHub Desktop가 설치되지 않은 상태여도 첫번째 단계를 따라하는 과정에서 설치창이 뜨기 때문에 괜찮다.

1. Code-Open with GitHub Desktop 클릭하기

  • local로 가져올 repository 창에서 Code-Open with GitHub Desktop 클릭한 후, GitHubDesktop 열기 버튼을 누른다.
  • 만약 GitHub Desktop 다운로드가 안되어있으면 다운로드 창으로 이동될 것이다. 거기서 다운로드를 진행하면 된다. (reference video 2:50~)

2. Local path 설정하고 Clone 클릭하기

  • Local path에서 Choose... 버튼을 눌러 clone할 repository를 담을 폴더를 하나 생성하고 선택한다.
  • ex) C:\Users\yedin\OneDrive\바탕 화면\github-project\donut-research: github-project 폴더에 donut-research 폴더를 새로 생성한 후, 생성한 폴더에 들어간 상태에서 폴더 선택 버튼을 눌렀다.
  • local path 선택이 끝나면 Clone버튼을 누른다.
    그러면 clone이 진행된다! clone이 끝나면 지정한 local path에 repository 폴더 및 파일들이 저장되어 있는 걸 확인할 수 있다.

3. For my own purposes로 선택 바꾸기

  • 꼭 바꿔줘야한다! (나는 까먹어서 clone을 다시 한 적이 있다…)
  • 바꾼 후, Continue 버튼 눌러주면 clone은 끝이다.

4. vscode에 clone된 폴더 open하기

  • 여기부터는 clone 이후 작업을 하는 과정에 해당한다.
  • 지정한 local path를 가면 repository name 이름의 폴더가 생성되어 있다. 그 폴더를 vscode에서 open한 후, 코드를 수정하거나 실행하는 등 작업을 진행하면 된다.

5. 변경사항 remote repository에 동기화하기

  • 코드 수정 or 파일 및 폴더 생성 등 변경사항이 있을 때 GitHub Desktop에서 왼쪽 하단에 있는 Commit to master 버튼을 눌러 commit을 해줘야 한다. (commit 자주 해주자!)
  • Summary칸이 commit message에 해당하기 때문에 해당 칸에 변경사항을 간단히 적어주는 것이 좋다.

댓글남기기