[olive] Jenkins setup

드디어 젠킨스를 설정했다.

그동안 올리브 프로젝트를 진행하면서 여러차례 자동 빌드 시스템의 필요성을 느꼈었다.
자동 빌드 + 자동 유닛 테스트 + 자동 배포까지… 포함한 시스템이 필요했었다.
아직은 유닛 테스트와 배포를 위한 부분이 부족했지만, 그래도 언젠가는 자동 빌드 시스템이 필요한 때가 올꺼라는 것은 알고 있었다.

회사 팀장 Chris 에게 이런 내용을 이야기했더니, buildbot(http://buildbot.net/)을 추천해 주었었다.
추천 이유는, 작고, 빠르고, 간단하다는 것이었다.

하지만… 사용하려고 이리저리 노력해본 결과, 나랑은 맞지 않았다.
레퍼런스가 많지 않았고, 무엇보다 필요시 실제 업무에 바로 적용하여 사용할 수 있기를 바랬었기 때문이다.
(실제 업무에서는 Jenkins 와 Buildbot 둘 다 사용하고 있다. 하지만 Buildbot 의 비중은 크지 않았다.)

아무튼, 오늘 간단하게나마 그동안 바래왔던 Jenkins 의 설정을 했다.
간이 테스트 결과, 잘 작동한다. ㅎㅎㅎ 🙂

git master merge into devel

그동안 git 의 devel 브랜치에 대해서 약간 애매한 부분이 있었다.

줄곧 devel 브랜치는 master 브랜치로 merge 를 당하는 쪽이라고 생각한 것이다.

만약, devel 브랜치와 master 브랜치가 서로 다른 소스를 가지게 되는 경우에는 어떻게 할까?

예를 들어, 만약 hotfix 를 master 브랜치에만 적용을 했을 경우라면, devel 브랜치에는 hotfix가 적용되지 않게된다.
이런 경우, devel 브랜치를 master 브랜치로 merge를 하더라도 hotfix 에 대한 내용은 devel 브랜치에는 적용이 되지 않게 된다.

오늘, 이 문제에 대해서 직장동료 Lars 에게 물어보았다. 정말 친절하게 정답을 알려주었다.

간단했다.. 그냥 devel 브랜치에서 master 브랜치 내용을 merge 하면 되는 것이었다. -_-;;

Merge remote-tracking branch ‘origin/master’ into devel