계속 테스트를 전용 서버로 이동합니다 (자동 테스트로 로컬 랩톱의 속도가 느려집니다). 내가 원하는 것은 내 테스트 서버 (CruiseControl.rb를 실행하는)가 Git을 통해 내 최신 (커밋 된) 변경 사항을 지속적으로 얻는 것입니다. 이상적으로는 내 워크 플로를 변경하지 않아도됩니다. 나는이 프로젝트를 진행하는 유일한 개발자이다. 테스트 서버를 얻기에원격으로 Git의 현재 지점 추적
이전에, 내가했다 :
- 내 노트북을 내 주요 개발 시스템으로
- 여러 가지를 내 로컬 저장소에.
- 지점 중 하나를 가리키는 로컬 작업 복사본. 분기 간을 자주 전환합니다 (일반적으로 새 기능 용).
- GitHub 계정은 미러링 된 원격 지점에 로컬 지점을 자주 푸시하는 계정입니다. (이것은 주로 오프 사이트 백업을 사용하기위한 것이므로 현재 프로젝트에 대한 코드를 공유하지 않습니다.) 나는 매일 잊어 버리기는하지만 GitHub을 매일 매일 끝내려고 노력한다.
나는 그 모든 것을 그대로 유지하고 싶습니다. 그 꼭대기에, 지금이 :
- 테스트 서버 CruiseControl.rb
- 내 테스트 서버에서 내 노트북 저장소의 복제를 실행 .... (현재 GitHub 복제 안 함)
- 테스트 서버에서 CC가 작성/테스트중인 로컬 작업 복사본.
내가 자동으로 내 노트북 작업 복사본에서 일하고 있어요 어떤 지점받을 수 있도록에서 구축 내 테스트 서버를 가지고 노력했습니다 (물론) 하나 개의 특정 힘내 지점에
것들 내가 성공하지 않고 시도했다 :
- 자식 체크 아웃 원산지/HEAD :이 잘 파일을 얻을 수 있지만 복사 작업 "무점포을"좋아하지 않기 때문에 CruiseControl을 나누기.
- git checkout --track -b a_branch origin/a_branch : 파일 가져 오기에 문제가 없으며 CC가 좋아하지만 테스트 서버를 특정 분기에 고정시킵니다. 랩톱에서 분기를 전환 할 때 현재 작업을 테스트하는 것을 사실상 중단합니다.
- git checkout --track -b my_testing_branch origin/HEAD : 이것은 또한 빌드 가능한 파일을 가져 오지만 위의 명령과 동일한 문제가 있습니다. origin/HEAD에서 브랜치를 생성하면 "default"브랜치의 HEAD 만 가져 오므로 고정적입니다.
워크 플로우의 주요 변경 사항을 포함하지 않는 원격 원격 테스트 시스템 (git 브랜치 포함 또는 불포함)을 얻을 수있는 방법이 있습니까?
테스트 서버가 테스트를 위해 최신 코드를 가져 오려면, 서버가 그것을 잡을 수있는 곳으로 밀어 넣어야하고, git에 포스트 푸시 훅이 있다고 나는 믿지 않는다. 푸시를 수행 한 머신에서 후크가 실행될 것이라고 생각합니다 (예 : 저장소가있는 서버가 아닌 랩톱). –
원래, 나는 완전히 sans-push하고 있었고, 서버를 내 노트북에서 꺼내야했습니다. 서버가 풀을 시작하게하는 서버 (예 : ssh 원격 명령)에 대한 메시지를 실행하면 post-commit 후크가있는 Pat의 제안이 작동 할 수 있습니다. 그러나, 나는 현재 푸시 경로로 다시 기울고있다. –
실제로, "post-push"hook은 --receive-pack 매개 변수 형태로 git-push에 있습니다. –