in OSX, Repo

Mac – Using GitLab

원문

Using gitLab

Mac에 GitLab를 설치하기 위해서는 몇 가지 전제 조건이 필요한데, 본인은 한 가지 조건을 더 부가했다. 뭐 거창한 것은 아니고, 실제 서버(하드웨어)에 설치하는 것이 아닌 개인용 맥북프로에 설치하는 것이어서 git이라는 운영용 계정을 따로 만들지 않고 개인 계정을 그대로 활용했다. 이 점에 주의하면, 호스팅용 세팅도 별반 다르지 않다. 또한 Mac이 아니라면 GitLab의 설치 문서만으로도 간단히 설치가 된다(Gitosis는 조금 신경을 써야 겠지만…).

참고

* GitLab을 설치하지 않고 단순히 Mac에 gitosis를 설치하여 Git 서버를 관리하는 목적이라면 다음 두 포스트 만으로도 충분할 것이다.
Installing gitosis on Mac OS X
Hosting Git repositories, The Easy (and Secure) Way

필수 조건

  • Ruby 1.9.2-p290Ruby on Rails 3.1
  • sqlite(Mac에는 /usr/bin/sqlite3에 설치 되어 있을 것이다.)
  • git
  • giosis
  • GitLab
  • Ruby 1.9.2-p290 설치하기

    [code]$ brew install ruby[/code]
    * brew가 설치되어 있지 않을 경우 설치를 해주자. (open source)
    [code]/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"[/code]

    버전을 확인 후 다음으로 진행한다. 만약 이전 버전이 나온다면 이전버전에 대한 처리를 해주자.

    Ruby on Rails 3.1 설치하기

    [code]sudo gem update rails[/code]

    git 설치되었나 확인하기

    아마 설치되어있을 것이다.

    gitosis 설치하기

    git이 설치되어 있으므로 다음과 같이 저장소를 복사한다. (설치한 소스는 모두 홈 디렉토리를 이용했다.)
    [code]
    git clone git://eagain.net/gitosis.git
    cd gitosis
    sudo python setup.py install
    [/code]

    gitosis를 설치하면 아래와 같은 메시지를 확인 할 수 있다.
    [code]
    …..
    Finished processing dependencies for gitosis==0.2
    [/code]

    SSH를 이용하기 위한 공개 키 생성하기

    만약 기존에 GitHub를 사용하고 있다면 기존 키를 사용해도 무방하다.
    SSH 키 생성과 관련하여 자세한 내용은 링크를 참고하라.
    (키 생성위치 예: /Users//.ssh)
    [code]// 현재 홈 디렉토리 이므로(/Users/<user>) 없다면 디렉토리를 생성해주자.
    cd .ssh[/code]

    // 그리고, 메일주소를 추가하여 공개 키 생성
    ssh-keygen -t rsa -C “@gmail.com”

    공개 키까지 생성하였으면 gitosis를 위해 다음 두 가지 추가 작업을 해야 하는데, 한 가지 주의할 점이 있다. 위에서 미리 언급했듯이 서버 관리를 위해 git이라는 계정을 따로 만들지 않고 사용자 계정을 그대로 사용한다고 했으니 다음 볼드 글자(사용자 계정) 부분만 신경쓰면 된다.
    // 현재 위치: /Users//.ssh
    sudo -H -u ezcocoa gitosis-init < ./id_rsa.pub 생성시 아래와 같은 메세지를 확인 할 수 있다. [code] Initialized empty Git repository in /Users/hojunbaek/repositories/gitosis-admin.git/ Reinitialized existing Git repository in /Users/hojunbaek/repositories/gitosis-admin.git/ [/code] [code]// 마지막으로... chmod 755 ~/repositories/gitosis-admin.git/hooks/post-update[/code]

    GitLab 설치하기

    GitLab의 설치 문서를 그대로 따라하기만 하면된다.
    [code]// 현재 홈 디렉토리이다.
    git clone git://github.com/gitlabhq/gitlabhq.git
    cd gitlabhq/[/code]

    [code]// 다음 라이브러리들 부터 설치한다.
    sudo easy_install pygments[/code]

    [code]// 위 라이브러리 설치가 끝난 후…
    sudo gem install bundler[/code]

    [code]// 다시… 약간 시간이 걸린다.
    bundle[/code]

    [code]// 위 작업까지 이상이 없다면…
    RAILS_ENV=production rake db:setup[/code]

    [code]// 마지막으로… 다음과 같은 기본정보로 관리자 계정이 생성된다.
    // ID: admin@local.host
    // PW: 5iveL!fe
    RAILS_ENV=production rake db:seed_fu[/code]

    자 이제 서버를 실행시킬 차례인데, 위에서 미리 언급했듯이 git 계정을 사용하지 않고 사용자 계정(예: )을 사용할 것이므로… GitLab의 gitosis.yml의 설정을 변경해야 한다.
    [code]// 바로 전 작업했던 위치가, /User/<user>/gitlabhq 이였으므로…
    cd config
    vi gitosis.yml
    [/code]

    파일 내용은 다음과 같을 것이다.
    [code]admin_uri: git@localhost:gitosis-admin.git
    base_path: /home/git/repositories/
    host: localhost
    git_user: git [/code]

    다음과 같이 수정한다.
    [code]admin_uri: <user>@localhost:gitosis-admin.git
    base_path: /Users/<user>/repositories/
    host: localhost
    git_user: <user>

    다 수정하였으면 다음과 같이 서버를 실행해 보자.
    [code]
    // 당연히 실행 위치는 gitlabhq 이다.
    cd ..[/code]

    [code]// 서버 실행
    rails s -e production[/code]

    서버가 실행된 후, http://localhost:3000/ 주소로 브라우저에서 접속하면 로그인 화면이 뜰 것이다. 위에서 미리 생성된 관리자 계정으로 접속 된다면
    기본 설치는 끝났다.

    * bundle 입력 중 아래와 같은 문제가 발생할 수 있다.
    [code] `bin_path’: can’t find executable rake for rake-0.8.7 (Gem::Exception)
    [/code]

    이 문제는 1.9.2문제로 아래와 같이 해결할 수 있다.

    [code]sudo ln -s /usr/local/bin/ruby /opt/local/bin/ruby[/code]

    버전 확인
    [code]ruby -v
    gem list -d
    rake –version
    [/code]

    다시 설치.
    [code]
    gem install rake
    [/code]

    Write a Comment

    Comment