GIT 서버 구축,
참, 만만하게 볼 건 없는 것 같다. GIT은 쉬운 툴이고 사용하기도 편리하다는 GIT의 소개와는 달리,
머가 참 구축하기 힘든지....
GIT 서버를 구축하면서 현재 당면한 어려움은 인증 부분인 것 같다.( 머 이상이 있는 데, 정확한 분석은 되지 않고,
두리뭉실 "인증 부분이 잘 안되는 건가봐"라는 생각을 하고 있다.)
몇 번 설치하고 제거하고를 반복 하면서, 인증 메커니즘에 이해가 되려고 한다.
다시 한 번 시도하여 성공적인 소스서버를 구축하리라!!!
1. GIT 설치, GITOLITE 설치
우선 GIT 서버 관리는 Gitolite를 이용하여 하려고 한다.
준비된 서버의 OS는 Ubuntu이다.
$ cat /etc/*-release | uniq
버전 정보가 출력된다.
설치된 버전은 Ubuntu 12.04.4 LTS이다.
GIT 설치는 다음과 같이 한다.
$ sudo apt-get install git-core
버전 확인은 다음과 같이 한다.
$ git --version
현재 설치된 버전은 1.7.9.5가 설치되어 있다. 현재 1.8.5.3.까지 나온 것으로 알려져 있지만, Ubuntu에서는 배포판으로 1.7.9.5 버전을 사용하는 것으로 보인다.
Git을 처음 설치하면, 사용자 정보를 입력해야 한다.
$ git config --global user.name "Warren Beon"
$ git config --global user.email warren@2x4soft.com
* 이름과 이메일 주소는 각자 자신의 것을 사용한다.
2. Git 계정 생성
이 챕터는 Gitolite설치/설정에 대해 꽤나 잘 나와있는 블로그에서 발췌했다.
(펌: http://whatwant.tistory.com/331)
Git의 Repository를 운영하기 위한 계정을 생성을 한다: git-repo
Gitolite를 관리하기 위한 관리자 계정을 생성한다: git-admin
(작업 계정)
$ sudo adduser git-repo
$ sudo adduser git-admin
SSH 환경에서 여러 개발자들을 지원해 주기 위해서는 Linux 계정을 그 숫자 만큼 만들어 줘야 한다.
이 방법은 대표 계정을 만들고, 여러 사용자를 지원하기 위한 방법이다.
현재 작업 중인 계정에서 다른 계정에 접근하기 위해 SSH의 Public-key를 등록한다.
Git과 무관하게 git-repo, git-admin에 쉽게 접근하기 위해서 하는 작업이다.
(작업 계정)
$ ssh-keygen (: 키 생성, 암호를 넣지 않는다!!)
$ ssh-copy-id -i ~/.ssh/id_rsa.pub git-repo@localhost (: 키등록)
$ ssh-copy-id -i ~/.ssh/id_rsa.pub git-admin@localhost (: 키등록)
3. Gitolite 다운로드 및 설치
Gitolite설치는 repository를 저장하는 git-repo 계정에 설치를 한다.
(작업 계정)
$ ssh git-repo@localhost (: git-repo 계정으로 진입)
(git-repo 계정)
$ git clone https://github.com/sitaramc/gitolite.git (: 다운로드 gitolite)
$ ./gitolite/install (: 설치)
Gitolite의 관리자 계정의 공개키가 필요하다. 따라서 git-admin을 gitolite의 관리자 계정용으로 만들어 놓았고,
git-admin에서 키를 생성한다.
(git-admin 계정)
$ ssh-keygen
$ scp ~/.ssh/id_rsa.pub git-repo@localhost:/home/git-repo/.ssh/git-admin.pub
git-admin의 공개키를 git-repo계정으로 전송한다.
전송이 완료되었으며, gitolite setup을 수행시킨다.
(git-repo 계정)
$ ./gitolite/src/gitolite setup -pk ./.ssh/git-admin.pub
위와 같이 수행하면,
/home/git-repo/repositories라는 폴더가 생성되며, 폴더 내부에 gitolite-admin.git이라는 저장소가 생성된다.
gitolite의 설정은 설정용 저장소를 만드는 것이고 gitolite의 gitolite-admin.git 저장소의 내용을 수정하고 Push하여 Gitolite를 설정을 한다.
따라서 gitolite의 설정은 gitolite를 관리용으로 만든 계정 git-admin에서 설정을 하게된다.
git-admin계정으로 login하여 gitolite-admin.git 저장소를 clone해 본다.
(git-admin 계정)
$ cd
$ mkdir repositories
$ cd repositories
$ git clone git-repo@localhost:/gitolite-admin.git
<레퍼런스>
- http://whatwant.tistory.com/331
- git-scm.com/book/ : git-scm에서 제공하는 git 설명서
출처 : http://blog.daum.net/un4given/17
'Project' 카테고리의 다른 글
[행위기반탐지] 주저리1 (커널 드라이버와 통신) (0) | 2017.03.03 |
---|---|
[행위기반탐지] kernel에서 프로세스 핸들로 PID구하기[ 삽질 1-2 완료 ] (0) | 2017.02.02 |
[행위기반탐지] 삽질2 (0) | 2017.02.01 |
[행위기반탐지] 삽질 1 (0) | 2017.01.31 |
[행위기반탐지] ZwCreateThreadEx 의 인자 분석 ( 32bit ) (0) | 2017.01.30 |