Git 저장소 만드는 방법
Git 설치 이후 Git 저장소 만드는 방법을 알아보도록 하겠습니다.
대부분의 한국 개발자 기준에 맞게 Windows 환경의 Git Bash 기준으로 설명하지만 Git Bash는 리눅스 기반의 명령어를 사용하므로 리눅스 환경에서도 그대로 사용할 수 있습니다.


Git 저장소를 만드는 방법에는 두 가지가 있습니다.

첫 번째 - 이미 진행중인 프로젝트 디렉터리(이클립스 프로젝트, Visual Studio 프로젝트 등..) 또는 작업하고자 하는 디렉터리를 생성한 후에 해당 디렉터리를 Git 저장소로 등록하는 방법.

두 번째 - 다른 서버에 있는 Git 저장소를 Clone 하는 방법.



기존 프로젝트(디렉터리)를 Git 저장소로 등록
먼저 두 가지 방법 중 이미 만들어서 진행중인 프로젝트 디렉터리를 Git 저장소로 등록하여 사용하는 방법을 알아봅니다. 만약 진행중인 프로젝트가 없다면 시작할 프로젝트의 디렉터리를 생성 후 등록할 수 있습니다.

먼저 cd [등록할 프로젝트 디렉터리 경로] 를 통해 이동합니다.
$ cd c:my_repo/    #프로젝트가 없다면 mkdir my_repo를 통해 생성                                
cs


경로에 이동했다면 git init 명령어를 통해 Git 저장소로 등록합니다.
$ pwd                                                                                        
/c/my_repo
 
 
$ git init
Initialized empty Git repository in C:/my_repo/.git/
cs



git init 명령어
git init 명령어는 .git 이라는 하위 디렉터리를 생성합니다.
.git 디렉터리에는 Git 저장소에 필요한 뼈대 파일이 들어 있습니다. 그러나 init 명령어를 실행한 직후에는 프로젝트 디렉터리 내부에 있는 어떤 파일(소스코드, 자원파일 등..)도 Git에게 관리되지는 않습니다.

만약 git init 이후에 해당 프로젝트 디렉터리 내부의 파일들을 Git의 관리 대상으로 등록하고 싶은 경우에는 git add 명령어를 통해 목록에 추가하고 git commit 명령어를 통해 커밋해야 합니다.

다음의 명령어들을 통해 커밋 이후에는 파일들의 버전 관리가 시작됩니다.
$ pwd                                                                                        
/c/my_repo
 
 
$ ls
firstFile.txt
 
 
$ git add *.txt
 
 
$ git commit -'최초 프로젝트 commit입니다.'
[master (root-commit) 80ebfcc] 최초 프로젝트 commit입니다.
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 firstFile.txt
cs



다른 서버의 기존 저장소를 Clone 하기
만약 회사내에서 이미 진행중인 프로젝트나, 이미 진행중인 오픈소스 프로젝트에 참여하고 싶은 경우에는 git clone 명령어를 통해 가져올 수 있습니다. git clone을 실행하면 프로젝트 히스토리를 전부 받아오게 됩니다. 


git clone 명령어
git clone 명령어는 git clone [중앙 저장소 url] 과 같이 사용합니다.
예를 들어 Java Script 라이브러리인 jQuery 프로젝트를 clone 하고 싶은 경우 다음과 같이 실행합니다.
$ cd c:    #Git 저장소를 clone 하고 싶은 경로로 이동                                            
 
 
git clone https://github.com/jquery/jquery
Cloning into 'jquery'...
remote: Counting objects: 42740done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 42740 (delta 0), reused 1 (delta 0), pack-reused 42738
Receiving objects: 100% (42740/42740), 27.12 MiB | 1.30 MiB/s, done.
Resolving deltas: 100% (30235/30235), done.
cs


위와 같이 git clone을 하게 되면 jquery 라는 디렉터리를 하나 만들고 그곳에 .git 디렉터리를 생성삽니다. 이후 저장소의 모든 데이터를 복사하여 가져온 후 가장 최신 버전의 상태로 Checkout 하게 됩니다. 이때부터 곧바로 복사된 프로젝트를 통해 나만의 프로젝트를 진행할 수 있습니다.

만약 원격 저장소와는 다른 디렉터리명으로 Clone 하고 싶은 경우 다음과 같이 사용합니다.
단지 다른점이 있다면 끝에 원하는 디렉터리명을 적어주는 것 뿐입니다.
$ git clone https://github.com/jquery/jquery myQuery                                        
cs



Clone 시에 지원하는 프로토콜
Git은 다양한 프로토콜을 지원하며, http://, https:// 뿐만 아니라 git:// 이나 user@server:path/to/repo.git 과 같이 SSH 프로토콜도 사용 가능합니다.


출처 - https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository

블로그 이미지

도로락

IT, 프로그래밍, 컴퓨터 활용 정보 등을 위한 블로그

댓글을 달아 주세요! 질문 환영합니다!