Section 1.1: 첫번째 저장소 (repository) 를 만든 후, 파일을 add 하고 commit 하기

명령어 입력줄을 통해 Git 이 설치되어 있는지를 먼저 아래와 같이 확인해보자:

모든 운영체제에서:

git --version

UNIX 계열 시스템에서:

which git

아무것도 반환되지 않거나, 명령어가 인식이 되지 않는다면 설치 프로그램을 다운받고 실행하여 Git을 시스템에 설치해야 할 것이다.

Git 홈페이지에 가면 매우 명확하고도 이해하기 쉬운 설치 방법들이 소개되어 있다.

Git 을 설치한 다음에는, 자신의 사용자 이름(username) 과 이메일 주소 정보를 설정하자. 이 작업은 commit 을 작성하기 전에 수행해야 한다.

역주: 사용자 이름과 이메일 주소 정보 설정 방법은 1.4 섹션에서 설명하고 있습니다

Git 설치가 완료되면, 버전 관리를 하고자 하는 디렉토리로 이동한 다음 아래와 같이 빈 Git 저장소(repository) 를 생성한다:

git init

이는 .git 이라는 이름의 Git 동작에 필요한 기본 설비가 포함된 숨겨진 디렉토리를 생성한다.

다음으로, Git 이 새로 만들어진 저장소에 어떤 파일들을 추가할지 확인한다; 이 작업은 특별히 주의를 기울일 필요가 있다:

git status

위 명령의 결과 파일 목록을 확인하고, Git 에게 버전 관리를 맡길 파일들을 추가한다 (암호 등과 같이 민감한 정보가 포함된 파일이나, 중요하지도 않으면서 저장소를 어지럽히기만 하는 파일들을 추가하는 것은 피하도록 한다):

git add <file/directory name #1> <file/directory name #2> < ... >

만약 파일 목록에 나타난 모든 파일들이 저장소에 접근하는 사람들에게 공유되어야 한다면, 아래의 간단한 명령어로 현재 디렉토리와 하부 디렉토리들의 모든 파일들을 저장소에 추가할 수 있다:

git add .

위 명령어들은 버전 관리에 추가될 파일들로 하여금 "stage" 라는 과정을 통 하여, 해당 파일들이 여러분의 첫 번째 commit 에 기록될 수 있도록 준비한다.

버전을 관리할 일이 전혀 없는 파일들의 경우에는 add 명령을 수행하기 전에 .gitignore 라는 이름의 파일을 만들고 해당 파일에 무시할 파일들 목록을 기술하도록 한다.

지금까지 추가한 모든 파일들을 commit 메시지와 함께 다음과 같이 기록한다:

git commit -m "Initial commit"

이는 -m 옵션 이후에 기술된 commit 메시지를 포함하는 새로운 commit을 생성한다. commit 이란 전체 프로젝트에 대한 저장본 혹은 스냅샷과 같은 개념으로 이해하면 된다.

이제 이 commit 은 원격 저장소로 push 혹은 upload 할 수 있으며, 나중에 필요할 경우 다시 해당 commit 으로 돌아올 수도 있다.

commit 시에 -m 파라미터를 생략하면, 여러분의 기본 설정된 편집기가 뜨도록 되어 있어 해당 편집기에서 commit 메시지를 수정 및 저장할 수 있다.

원격 저장소 추가하기

새로운 원격 저장소를 추가하려면, Git 로컬 저장소가 위치하고 있는 디렉토리에서 git remote add 명령어를 터미널에 입력하면 된다.

git remote add 명령어는 두개의 파라미터를 받는다:

  1. 원격 저장소 별칭, 예) origin
  2. 원격 저장소 URL, 예) https://<your-git-service-address>/user/repo.git
git remote add origin https://<your-git-service-address>/owner/repository.git

노트: 원격 저장소를 git remote add 로 추가하기 전에, 해당 원격 Git 서비스에 필요한 저장소를 먼저 생성해 놓아야 한다. 원격 저장소를 추가한 다음부터는 commit을 push 및 pull 할 수 있게 된다.

본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형

+ Recent posts