개발/기술문의

LabVIEW/STM32 등 개발문의 -> jexe0716@gmail.com 으로 연락부탁드립니다.

ETC

Redmine + Git 프로젝트 관리 시스템 구축 -(1) Bonobo Git Server

jexe 2020. 12. 23. 18:31
반응형

개발 팀 내에서 협업 및 프로젝트 수가 많아짐에 따라, 프로젝트 관리 시스템 구축이 필요하게 되었다.

 

크게 시스템 조건은,

 

이전에 github를 잠깐 경험한 바 있으나, [1]외부에서는 접속하지 못하게 하는 조건이 있으므로 

외부가 아닌 서버PC에 '원격 저장소'를 둔다.

 

물론 나중에는 유료 버전의 고급 시스템을 쓸 수 있겠지만, 현 수준에서는 충분히 [2]무료로 구축한다.

이 조건에 맞춰 Redmine + git 조합으로 시스템 구축을 준비하게 되었다.

따라서 오늘은 먼저 git를 여러 pc에서 접속하여 commit 할 수 있도록 해보자.

 

-----------------------------------------------------------------------------------------------------------------------------------

한 일주일 간 Git를 윈도우10의 OpenSSH 를 통해 연동할 수 있도록 시도하였다가 실패하였다. 인터넷에서는 대부분

리눅스 기반 정보가 많아서 리눅스 초보인 나로서는 아직은 활용하기가 어려웠다.

 

그러한 이유로, Bonobo Git 라는 것을 활용하기로 했다.

bonobogitserver.com/

 

Bonobo Git Server - Git Server for Windows

Simple git server for Windows. Set up your own self hosted git server on IIS for Windows. Manage users and have full control over your repositories with a nice user friendly graphical interface. Download 6.5.0 See the changelog

bonobogitserver.com

인터넷에 Bonobo Git Server 설치 방법에 대해 많이 있을 것이다. 나의 경우,

윈도우10 기준으로 하기 때문에 인터넷에 있는 정보에서 .Net 버전은 걱정할 필요가 없이 아래 방법으로 진행했다.

 

먼저 아래 주소에 가서 윈도우 버전의 git 설치파일을 다운받아 PC에 설치한다. 

git-scm.com/ 

 

Git

 

git-scm.com

 

git가 정상적으로 설치되면, 윈도우 창에 Git관련 프로그램들이 보일 것이다.

 

다음으로 위에서 언급한 bonobo 주소에 가서 bonobo git server 설치파일을 다운받는다.

 

 버전 이름으로 된 압축파일을 풀면 Bonobo.Git.Server 폴더가 존재한다.

 내부에서 App_Data를 포함한 여러 파일들이 있을 것이다.

 

git를 설치하였고, bonobo git server를 다운받고 나면, IIS 를 이용하여 bonobo git server를 사용할 수 있게 할 것이다.

IIS를 실행하기 위해서 제어판 > 프로그램 > Windows 기능 켜기/끄기 를 클릭하여 아래와 같이 설정한다.

설정을 하게 되면 윈도우10에서 알아서 IIS 관련 설치를 진행한다.

 

 

IIS 설치가 완료되면 C드라이브에 inetpub 폴더가 생성되는데, inetpub > wwwroot 안에 Bonobo.Git.Server 폴더를 넣는다. (나의 경우, Bonobo.Git.Server 폴더 명을 Git.Server로 변경하였다)

 

IIS 설치가 잘 되었다면, 윈도우 창에 IIS(인터넷 정보 서비스)관리자 가 검색 될 것이다. 

IIS 관리자를 실행한다.

 

IIS 관리자 좌측에 있는 사이트를 우클릭 한 뒤 웹 사이트 추가를 선택한다.

 

웹 사이트 추가에서 

-사이트 이름: Git.Server

-실제경로: wwwroot폴더 안에 있는 Git.Server

-포트: 원하는 번호(나의 경우 22)

-응용 프로그램 풀 선택 클릭 후 .NET v4.5 이상을 선택한다.

 

확인을 눌러 IIS 설정을 완료한다.

 

웹 브라우저에 http://localhost:22를 주소창에 입력하면 Bonobo Git Server 창이 열린다. 

초기 ID와 PASSWORD는 admin, admin 이다.

서버 PC가 아닌 개발자 PC에서 git 연동을 하기 위해 우선 ID를 1개 추가한다.

ID는 Users 창에서 쉽게 만들 수 있다.(Create New Account)

 

다음으로 원격 저장소를 만들기 위해 Respositores 에 들어가서 Create New Repository를 눌러 제작한다.

이때 Contributors에서 위에 만든 ID(개발자)에게 접속 권한을 주기 위해 클릭한다.

 

원격 저장소(test_server)를 만들게 되면 Git.Server > AppData > Repository 안에 test_server라는 폴더가 생성된다. 

이것이 원격 저장소의 진짜 위치이며, git에서 사용할 때는 Git URL (http://localhost:22/test_server.git) 을 사용한다.

 

위의 설치 및 세팅으로 우리는 git server를 완성했다. 이제 테스트를 위해 2가지를 시도할 것이다.

(1) 서버PC에서 admin 아이디로 접속하여 git push 실시.

(2) 개발자PC에서 개발자 아이디로 접속하여 서버PC에서 올린 데이터를 git clone 한 뒤, 수정하여 git push 실시.

 

그리고 Git 사용법에 대해서는 여러 사이트를 통해 아주 쉽게 배울 수 있으니, 여기서는 언급하지 않겠다.

-----------------------------------------------------------------------------------------------------------------------------------

 (1)서버PC에서 admin 아이디로 접속하여 git push 실시

 

Git Bash를 켜서 로컬 저장소(test_local)를 생성하고 git init.

그리고 test.txt 파일을 추가한 뒤, git commit

git remote 추가 위치(원격 저장소 위치)를 Git URL (http://localhost:22/test_server.git) 로 지정한 뒤 git push한다.

git push 을 하게 되면 Git Credential Manager 창이 뜨면서 아이디와 비밀번호를 요구한다.

서버PC에서는 admin 계정으로 접속하여 진행한다. 

완료가 되면 bonobo git server에 방금 진행한 git 정보가 업데이트 된다.

 

이제 가장 중요한 다른 PC에서 git 연동을 수행해보자.

(2) 개발자PC에서 개발자 아이디로 접속하여 서버PC에서 올린 데이터를 git clone 한 뒤, 수정하여 git push 실시.

 

개발자PC에서 Git Bash 를 켠 후, 로컬 저장소(test_develop_local)를 만든다.

그리고  git clone을 할 때 Git URL 를 접속하면 Git Credential Manager가 뜨면서 로그인을 요구한다.

git clone이 동작되면 개발자PC에 서버에 있던 git 상태를 복사해온다.

아래 test.txt 파일이 있는 것이 보일 것이다.

 

이제 여기에 개발자 문서(develop.txt)를 로컬 저장소에 넣은 후 git push 해보자.

 

Bonobo git server에서 develop.txt 파일이 올라간 것이 확인된다.

-----------------------------------------------------------------------------------------------------------------------------------

 

오늘은 서버PC에 git 서버를 구축하여 개발자 PC에서 git를 연동하는 것까지 진행하였다.

다음 글은 여기에 Redmine을 연동하여 프로젝트 관리(스케줄링, 리스트, ....)가 되는 시스템을 구축에 대해 설명하겠다.

 

 

반응형