Git

Git 초기화, Remote(Bare) 연결, 첫 Push

레파캣 2015. 12. 7. 11:11

Git 의 저장소는 Local, Remote로 두가지 형태가 있다.

Local 저장소로도 코드 관리는 완전히 할 수 있는데, 

보통 Remote 저장소를 다른 컴퓨터(서버)에 둬서 이중화/공유하여 사용한다고 보면 된다.


Remote 저장소는 Bare 저장소라고 부르며,

Local 에는 실제 소스 파일이 존재하는데, 

Bare 에는 소스는 없고 히스토리나 파일 관리에 필요한 정보가 있는거.. 같은데 일단 볼 필요성은 없는 듯 하다.


아래 사이트가 가장 유용했는데, 몇가지 덧 붙인다.

http://www.dreamy.pe.kr/zbxe/index.php?mid=CodeClip&category=113507&search_keyword=git&search_target=title&document_srl=95408



1. Bare 만들기


일단 로컬 저장소를 만든 후 Bare 를 만드는게 순서다.

Bare 를 만든 뒤, 다른 사람도 Bare 의 주소를 써서 Local clone 을 할 수 있다.


Local 저장소 만들기 : git init

Bare 저장소 만들기 : git clone --bare {local repository} {bare repository}


{local repository} 는 git init 을 통해 내가 만든 저장소고,

{bare repository} 는 bare 로 사용할 경로를 적으면 되는데 관행적으로 .git 을 붙인다고 한다.

-> git clone --bare spay ../remote-repo.git



2. Local 저장소에 Bare 연결하기


자동으로 될 줄 알았는데, 연결해줘야 한다.


git remote add {앞으로 사용할 리모트 저장소 이름} {Bare 저장소 경로}

-> git remote add origin ../remote-repo.git



3. 리모트 저장소, 브랜치 매핑하기


끝난 줄 알았는데, push 하려면 이것도 해줘야 한다.


개발시에 보통 "git push" 를 할텐데, 최초 push 할 때에는 리모트 & 브랜치를 설정해줘야 한다.

-> git push origin master


이렇게 최초 한 번만 리모트(Bare) 저장소와 브랜치를 명시해서 push 하면 앞으로는 "git push" 로 만으로 가능하다.

관련해서 --set-upstream 으로 지정(configure)해줘야 한다는거 같은데, 안해도 되더라..