2012-03-12 2 views
1

로컬 git 리포지토리가 있고 작업중인 젠킨스 프로젝트도 있습니다.git 푸시 커밋 전에 테스트 실행을위한 젠킨스 설정에 대한 자습서

내가 원격 REPO에 변경을 추진하기 전에 젠킨스 프로젝트가 실행됩니다 있도록 젠킨스 작업을 훅하고 싶습니다, 그리고 테스트의 성공 해달라고하면 자식 나는 이것이이어야한다고 생각

푸시를 중지 꽤 일반적인 시나리오지만 나는 인터넷 검색을 해왔고 설명하는 튜토리얼을 찾을 수 없었다.

+0

이것은 내가 지금까지 찾은 것 중 가장 가까운 것입니다 : http://wiki.hudson-ci.org/display/HUDSON/Git+Plugin#GitPlugin-AdvancedFeatures – opensas

답변

1

젠킨스는 변경 사항을 모니터링한다. 마지막 빌드 단계 (즉, 다른 모든 작업이 성공한 후에)에서 변경 사항을 실제 원격 저장소로 푸시 할 수 있습니다.

+0

아주 좋은 아이디어! – opensas

2

나는, 당신이 야생에서이 시나리오를 표시되지 않는 이유는 당신이 가지를 분리 반대을 별도의 의 repos를 사용하여 깨끗한 코드/더러운 코드 분리를 해결하기 위해 노력하고 같은 소리이다 생각 그것은 표준입니다.

아마도 젠킨스가 듣고있는 하나의 리모컨이 있고 아마도 'dev'브랜치를 듣고 있습니다. 로컬에서 원격 장치로 푸시합니다. 젠킨스 (Jenkins)는 변화를 보았을 때 듣고 그것이 보는 것을 좋아하면 그것을 '마스터'와 합칩니다.

그런 다음 더티 코드는 master 브랜치의 클린 코드와 별도로 dev 브랜치에 있습니다.

이 유형의 문제를 해결하는보다 일반적인 방법입니다.이 모델에 대한 지원이 더 많습니다.

+0

고마워, 사실 내가 그걸 달성하는 가장 좋은 방법은 무엇인지 알고 싶습니다 ... – opensas

+1

죄송합니다. 다른 * repo *로 푸시하는 것을 완수 하시려면 질문 하시거나 다른 가지를 물으시겠습니까? 후자 인 경우이를 확인하십시오. http : //twasink.net/2011/09/20/git-feature-branches-and-jenkins-or-how-i-learned-to-stop-wryingrying-about-broken -builds /. 이것은 하나의 가능성 일 뿐이지 만 올바른 생각을 제공해야합니다. –

2

실제로 이것은 꽤 일반적인 시나리오이지만 달성하기 쉽지는 않습니다.

출발점으로 가장 좋은 방법은 Jenkins official documentation을 읽는 것입니다.

여기에서 this one과 같은 특정 기사를 읽을 수 있습니다.이 기사에서는 원하는 것과 비슷한 것을 수행하는 하나의 고리에 대해 이야기합니다.