2012-05-28 4 views
2

최근 프로젝트 중 하나에 대한 개발/배포주기를 설정 중입니다. 여기 내가 무엇을하려고하는지입니다.수은으로 웹 사이트 구축

  1. "mercurial"로컬 복제본에 최신 코드를 적용하십시오. "의 bitbucket"에서 호스팅 중앙의 repo에
  2. 푸시를
  3. 열기 일부 웹 기반 관리 콘솔 이미의 bitbucket의 환매 특약이 자동으로 최신 커밋을 가져옵니다 사용하도록 구성되어 내 서버에 (이것이 내가 도움이 필요한 부분입니다) 목록을 보여줍니다.
  4. 수정 버전 중 하나를 선택하고 효과적으로 웹 사이트를 업데이트 할 수있는 업데이트를 수행하십시오.
  5. 최신 개정판에 몇 가지 문제가있는 경우 동일한 웹 콘솔을 사용하여 이전 버전으로 돌아가십시오.

"SourceTree"를 step1 및 step2에 사용하고 있으며 전체주기 GUI를 유지하려고합니다. 누구든지 서버 측 관리 (3,4,5 단계)에 사용할 수있는 도구를 제안 할 수 있습니까?

+0

[정상적인 방법] (http://stevelosh.com/blog/2009/01/deploying-site-fabric-and-mercurial/)에 대해 읽은 것으로 간주합니다. 배포 된 웹 사이트의 Repo로 로컬 저장소에서 직접 푸시하는 경우 # 3 및 # 4를 다루고 있습니다. 아 ~ # 5 아닙니다. 그게 내가 직접하는 방법이야. – Helgi

+0

예, 블로그 게시물을 보았습니다 ...하지만 좀 더 사용자 친화적으로 만들고 싶었습니다 ... 개발자를 위해 서버 프로비저닝을 피하십시오! –

+0

일회성 설치를 피할 방법이 없습니다. –

답변

2

이 당신이 생각하는 것보다 더 간단하다

  1. 복제 소스

  2. 로의 bitbucket 사용하여 서버에있는 웹 사이트의 루트 폴더에 hg pull -u를 호출하는 작은 웹 응용 프로그램을 작성 귀하의 웹 사이트. Mercurial은 어디에서 추려내는지 기억하고 있으므로 여기에는 아무 것도 필요하지 않습니다.

제 2 hg id -i 기능을 사용하여 구현 될 수있는 현재의 버전을 얻기 위해 (this answer 참조). 그것을 파일에 씁니다.

이제는 해당 파일의 모든 버전을 나열하고 해당 파일 중 하나를 클릭하면 hg up -r <revision>이 실행되는 웹 페이지가 필요합니다.

더 나은 방법은 로컬 repo (here 참조)에서 hg push을 사용하여 웹 서버로 직접 푸시하는 것입니다. 그런 다음 hook을 사용하여 파일을 업데이트하고 마지막 버전을 파일에 저장할 수 있습니다.

이제 이전 버전으로 되돌리려면 웹 서비스 만 있으면됩니다.

+0

"hg pull -u"를 호출하는 작은 웹 어플리케이션 작성하기> 내가 찾고 있어요 ... 사용 가능한 개정을 나열하고 하나에 업데이 트하자 일부 작은 webapp 구현. 나는 python/fabric으로 글쓰기를 생각하고있다. 그러나 거기에 시험되고 검증 된 솔루션이 있는지 알고 싶었다 ... –

+2

웹 사이트 루트에 저장소를 배치하는 경우 액세스를 거부하도록 웹 서버를 구성해야한다. '.hg' 디렉토리로 옮기거나 전체 사이트 소스 코드와 히스토리를 공개 할 수 있습니다! –

0

Team City은이를 수행 할 수있는 웹 앱입니다.

연속 통합 서버이지만 응용 프로그램을 사용할 때만 게시하도록 구성 할 수 있습니다.

많은 통합 서버가 있고 대부분/모두가 원하는 것을 할 수 있다고 상상하므로 사용자의 요구에 적합하지 않은 경우 검색 할 수 있습니다.

관련 문제