일단 원격 서버가 있다고 가정하고 로컬에 디렉토리 2개(서버와 로컬)을 만들어서 테스트를 할 것이다.
먼저 ~에 server 과 androidpro라는 디렉토리를 생성하고 androidpro로 이동한다.
여기에 또 proj라는 디렉토리를 생성 후 예제로 파일 2개만 만들어준다. 필자는 aaa.java와 bbb.xml 2개를 만들었다.
먼저 로컬 저장소를 생성하기 위해 $git init 명령어를 주고 모든 파일을 스테이징 영역에 추가하는 $git add *을 입력한다.
그리고 $git status명령을 치면 new file이라고 해서 2개가 들어간 것을 볼 수 있다. 이제 스테이징영역에 있는 파일을 commit
할 차례이다. $git commit -a -m "커밋메시지"를 주면 커밋이 되고 이제 공용 저장소(서버용 저장소)를 만들어 줄 차례이다.
프로젝트 전체를 저장소로 만들어야 하기 때문에 상위폴더로 올라가서 다음과 같이 입력한다.
$git clone --bare proj proj.git
그리고 ls 명령을 입력하면 proj.git 파일이 생긴 것을 볼 수 있다. 이것을 아까 맨첨에 생성했던 server 디렉토리에 옴겨준다.(만약 서버라면 서버내에서 사용될 공간에다가 옴겨주면된다.)
그리고 proj, proj.git 디렉토리를 둘다 지워준다. 빈공간이 되버렸네....어쩌지 ?? 이제 서버 저장소에 넣어놨던 git파일을 불러
올 차례이다. 불러오는 방법은 clone를 사용한다. $git clone ~/server/proj.git($git clone 서버주소/경로)
그리고나서 ls 명령어를 치면 git폴더가 아닌 proj폴더가 있는 것이 확인 될 것이다. 자 그럼 만약에 프로젝트를 수정한다고 치자.
받아온 폴더 안으로 들어가서 파일 하나를 더 생성해보자. ccc.png로 생성하고나서 역시 $git add .과 $git commit -a -m "커
밋메시지"를 해준다. 수정되었으니 이제 다시 서버에 push 해줄 차례다. 상위폴더로 가지 말고 로컬 저장소 영역이 있는 곳에
서 $git push명령이나 $git push ~/server/proj.git($git push 서버 저장소주소/경로)를 주면 아까 옴겨두었던 서버 저장소
영역에 저장이 된다. 확인을 해보려면 로컬디렉토리에서 프로젝트 디렉토리를 지우고 난 다음에 다시 받아보면 된다.
git가 SVN처럼 그냥 서버 한곳만 지정해두고 commit과 받기만 하면 되는 것이 아니라 태그라던가 브랜치에 따라서 작업 영역
이 달라진다니깐 첨에 배우는 사람은 진짜 골깨지는 것 같다....(브랜치와 태그는 좀 더 공부해봐야 할듯...)
먼저 ~에 server 과 androidpro라는 디렉토리를 생성하고 androidpro로 이동한다.
여기에 또 proj라는 디렉토리를 생성 후 예제로 파일 2개만 만들어준다. 필자는 aaa.java와 bbb.xml 2개를 만들었다.
먼저 로컬 저장소를 생성하기 위해 $git init 명령어를 주고 모든 파일을 스테이징 영역에 추가하는 $git add *을 입력한다.
그리고 $git status명령을 치면 new file이라고 해서 2개가 들어간 것을 볼 수 있다. 이제 스테이징영역에 있는 파일을 commit
할 차례이다. $git commit -a -m "커밋메시지"를 주면 커밋이 되고 이제 공용 저장소(서버용 저장소)를 만들어 줄 차례이다.
프로젝트 전체를 저장소로 만들어야 하기 때문에 상위폴더로 올라가서 다음과 같이 입력한다.
$git clone --bare proj proj.git
그리고 ls 명령을 입력하면 proj.git 파일이 생긴 것을 볼 수 있다. 이것을 아까 맨첨에 생성했던 server 디렉토리에 옴겨준다.(만약 서버라면 서버내에서 사용될 공간에다가 옴겨주면된다.)
그리고 proj, proj.git 디렉토리를 둘다 지워준다. 빈공간이 되버렸네....어쩌지 ?? 이제 서버 저장소에 넣어놨던 git파일을 불러
올 차례이다. 불러오는 방법은 clone를 사용한다. $git clone ~/server/proj.git($git clone 서버주소/경로)
그리고나서 ls 명령어를 치면 git폴더가 아닌 proj폴더가 있는 것이 확인 될 것이다. 자 그럼 만약에 프로젝트를 수정한다고 치자.
받아온 폴더 안으로 들어가서 파일 하나를 더 생성해보자. ccc.png로 생성하고나서 역시 $git add .과 $git commit -a -m "커
밋메시지"를 해준다. 수정되었으니 이제 다시 서버에 push 해줄 차례다. 상위폴더로 가지 말고 로컬 저장소 영역이 있는 곳에
서 $git push명령이나 $git push ~/server/proj.git($git push 서버 저장소주소/경로)를 주면 아까 옴겨두었던 서버 저장소
영역에 저장이 된다. 확인을 해보려면 로컬디렉토리에서 프로젝트 디렉토리를 지우고 난 다음에 다시 받아보면 된다.
git가 SVN처럼 그냥 서버 한곳만 지정해두고 commit과 받기만 하면 되는 것이 아니라 태그라던가 브랜치에 따라서 작업 영역
이 달라진다니깐 첨에 배우는 사람은 진짜 골깨지는 것 같다....(브랜치와 태그는 좀 더 공부해봐야 할듯...)
'Git' 카테고리의 다른 글
github 사용법 (0) | 2011.11.29 |
---|---|
git branch tag 명령 (0) | 2011.11.23 |