2009-09-23 5 views
5

저는 git 저장소와 지점을 사용하여 프로젝트를 구조화하는 방법에 대한 제안을 찾고 있습니다.git 웹 사이트 저장소/지점 구조에 대한 제안을 찾고

원격 저장소가 필요하고 프로젝트가 Flash 위젯을 사용하는 웹 사이트라고 가정합니다. Flash 위젯은 필자가 작성한 소스 코드로 컴파일됩니다.

내 웹 사이트를 배포하려면 프로덕션 서버를 원격 저장소에서 가져 오는 또 다른 git 클라이언트로 만들고 싶지만 Flash 위젯의 소스 코드를 프로덕션 서버의 작업 복사본에 넣지는 마십시오.

src /와 www /를 모두 포함하는 "master"브랜치와 "www /"만 갖는 "www"브랜치를 사용하면됩니다. 그러나 내 개발자 팀은 웹 사이트 관련 변경 사항을 www 지점에 체크인하고 플래시 소스 코드를 마스터로 변경하는 것을 기억해야합니다.

그래서 두 가지 질문 :이 솔루션을 자신의 프로젝트와 어떻게 비교합니까? 그리고 팀에서 개발자가 지점을 추적하기가 어렵고 실수로 한 지점에 있어야하는 변경 사항을 다른 지점에 위탁하여 푸시하는 것을 발견했습니다.

답변

4

Git repo 사본을 프로덕션 서버에 보관하려면 개인적으로 이 아닌이 필요합니다. 내 웹 사이트를 배포하기 위해 git archive을 사용하는 배포 스크립트를 사용하여 repo의 "Git-less"사본을 뱉어 낸 다음 SCP를 통해 프로덕션 서버로 복사합니다. 이 목적을 위해 Python Fabric을 사용하지만 Ruby 's Rake 또는 다른 것을 사용할 수도 있습니다.

배포가 간단합니다. 하나의 명령 만 실행하면 모든 것이 복사되어 프로덕션 서버에 설정됩니다.

+1

나는 repo에서 직접 당기지 않는 것에 동의합니다. 빌드/배포 컴퓨터를 사용하여 코드를 동기화하고 필요한 모든 빌드 요소를 실행하고 패키지로 만들어 프로덕션에 제공하십시오. –

+0

좋은 생각 인 것 같고 고려해야 할 사항입니다. 하지만 난 여전히 내 저장소에 src/및 www/디렉토리를 모두 보관할 것입니다. src와 www에 대한 별도의 repos와 git submodule 중 하나를 다른 개발 용으로 가지고 있습니까? 아니면 지점을 사용합니까? –

+0

플래시 소스 코드가 없으므로 상황이 귀하의 것과 동일하지 않습니다. 하위 모듈을 사용하는 것이 좋은 해결책 인 것처럼 들리거나 프로덕션 서버로 보내지 않으려는 파일을 무시하도록 배포 스크립트를 조정할 수 있습니다. – mipadi