git Server를 만들어보자~!!
Ubuntu 9.10에 git Server를 만들어보겠습니다.
gitHub를 이용해서 push, pull할수 있겠지만 무료로 사용할경우 private repository를 이용할수 없습니다.
그래서 자체적으로 서버를 만들어서 git의 private repository를 갖고 싶었습니다. (단순하죠.....허허)
그래서 찾은게 gitosis입니다. 나중을 위해 적어놓습니다~!!
sudo apt-get install git-core
cd ~/src
git clone git://eagain.net/gitosis.git
cd gitosis
sudo apt-get install python-setuptools
sudo python setup.py install
sudo adduser --system --disabled-password --shell /bin/sh --gecos 'git version control' --group --home /home/git git
여기까지가 기본설정이고, ssh로 git접속을 설정하는 부분입니다.
ssh-keygen -t rsa
~/.ssh/ 폴더에 id_rsa, id_rsa.pub가 생성됩니다.
sudo -H -u git gitosis-init < ~/.ssh/id_rsa.pub
~git/repositories/gitosis-admin.git 폴더가 생깁니다.
push, pull이 가능해졌습니다. test를 해봅시다.
기본 port(22)가 아니라서 위와 같이 했는데, 아래 같은방법도 있습니다.
~/.ssh/config 에서 아래와 같이 설정해줍니다.
새프로젝트 만들기
(keydir 에는 원격에서 생성한 ssh public key를 넣는 폴더입니다.
group은 아무렇게나 해도됩니다.
writable에는 프로젝트명, members에는 사용자 이름을 적으면 됩니다. 아래처럼요~~
git commit -a -m " make the dol9server Project"
git push git@GitServer:gitosis-admin.git
자~ 잘 만들었는지 확인해볼까요?
잘되네요 (두번째 사진은 제가 멍때리면 타자를 치다 그만. . .ㅋㅋㅋㅋ)
다른 컴퓨터에서 지금 만든 서버로 push하려면, 다른 ssh 키 만들어서 public key를 앞에서 말한 keydir로 복사하고,
gitosis.conf에 사용자명을 등록하면됩니다. (가장 중요한것은, conf수정하고 push하는 과정입니다~!!!!!)
좋구나~~~~~~
참조 :
http://mechanicalrobotfish.com/posts/119-installing-git-server-using-gitosis