2009-10-12 6 views
1

테스트 서버 (xam pro에서 xampp), 스테이징 서버 및 프로덕션 서버를 svn으로 설정하는 데 좋은 참조로 추천 하시겠습니까? 나는 "하드 코어"개발에 멍청한 사람이지만, 오른발에서 시작하여 프로처럼 내 환경을 설정하고 싶습니다. 몇 가지 프로젝트가 진행 중이며 한 걸음 앞으로 그리고 두 번 뒤로 앞으로 두 걸음 앞으로 나가기를 원합니다.개발 서버 참조 설정

필자가 가장 많이 이해하는 주요 영역은 모든 서버와 데이터베이스 (localhost/site.com/file.html vs www.site.com/file.com)를 대상으로 파일 경로를 올바르게 유지하고 업데이트를 다음 서버 - 프로덕션으로 스테이징하고 svn을 사용하여 테스트합니다 (같은 프로젝트에서 동시에 여러 사람이 작업하게됩니다).

각 프로젝트에는 단일 서버가 있으므로 부하 분산 및 여러 서버 설정에 대한 정보는 필요하지 않습니다. 우리는 또한 netbeans 또는 svn에 대한 이클립스 달리 제안하지 않는 한 사용할 계획이다.

프로덕션 및 스테이징 서버는 램프가되고 테스트는 xp pro에서 xampp이됩니다. 모든 도움에 감사드립니다! 귀하의 질문에

답변

1

(당신이 유닉스와 윈도우를 혼합 특히) 다른 서버에 동일한 경로를 유지하는 이유는 & 설정 파일은 여기 더보기 정보가 없습니다 프로젝트가 사용하는 모든 설정은 구성 파일로 분할됩니다. 우리는 웹 사이트를 구축하고 있으므로 web.config에서 해당 구성 파일을 참조합니다.

우리의 구성 폴더에 예를 들어 우리가이 내부와 ConnectionStrings.config이

는 (물론 []의 대신 정보에 기입) : 그것에

<connectionStrings> 
    <add name="APP" 
     connectionString="Data Source=[];Initial Catalog=[];uid=[];password=[]" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings> 

경로는 다음과 같습니다

Site root 
|--> Configuration 

는 그래서이 함께 웹 설정에서 참조 : 우리의 솔루션에 따라서

<connectionStrings configSource="Configuration\ConnectionStrings.config" /> 

을 우리는이 구조를 가질 것입니다 :

Solution folder 
|--> Environments 
    |--> Development 
    |-->Configuration 
     |--> ConnectionStrings.config 
    |--> Production 
    |-->Configuration 
     |--> ConnectionStrings.config 
    |--> Staging 
    |-->Configuration 
     |--> ConnectionStrings.config 
|--> Src 
    |--> Project folder (site root) 
    |--> Configuration 
     |--> ConnectionStrings.config 

일반적으로 우리의 AppSettings.config에 넣어 다른 설정. 파일에 대한 경로 나 변경 될 수있는 다른 설정과 같은 것들이 있습니다.

<appSettings> 
    <add key="FilePath" value="C:\FileStorage"/> 
</appSettings> 
1

3 부 : 서버 간의

1) 구성 파일의 차이 - 우리는 우리가 설정이 여러 버전을 유지 활성화에 파일을 저장하는 우리의 프로젝트에 환경 폴더가 있습니다. 그래서 같은

:

우리의 빌드 스크립트는 다음 그들을 배포로 원본 파일을 덮어 쓰기, 환경에 대한 매개 변수를 적용하고 올바른 환경 폴더를 끌어 내장되어
Solution folder 
    |--> Environment 
     |--> Development 
     |--> Staging 
     |--> Production 
    |--> Src 
     |--> Project folders 

.

2) 코드를 환경 서버로 푸시 - SVN에서 각 프로젝트마다 환경별로 분기를 설정합니다. 그래서 같은 :

SVN Root 
|--> Project 
    |--> Branches 
    |--> RB-Development 
    |--> RB-Staging 
    |--> Trunk 

트렁크는 우리의 생산 코드 인.

또한 작업중인 각 기능 세트에 대해 새 분기를 만듭니다. 그런 다음 배포 준비가 완료되면 올바른 환경 분기에 병합합니다. 빌드 도구는 해당 환경 분기를 모니터링하고 코드가 커밋 될 때 올바른 분기로 자동 배포합니다.

3) SVN을 사용하는 여러 사람 - 당신이 작업 할 각 수직 피처 집합에 대해 프로젝트의 가지를 만듭니다. 따라서 장바구니 유형 앱의 경우 고객, 제품, 주문 등에 대한 기능을 갖추고 있습니다. 이렇게하면 같은 지점에서 동시에 일하는 사람의 수를 줄일 수 있습니다. 그런 다음 필요에 따라 해당 분기와 서로 또는 환경 분기간에 코드를 병합하십시오. 그것은 실제보다 더 복잡하게 들립니다.

+0

안녕 칼튼, 당신이 공유 할 수있는 환경 폴더/설정 파일의 예를 가지고 있습니까? 나는 그들에게 무엇이 들어가야하는지 정확히 알지 못합니다. 귀하의 의견을 보내 주셔서 감사합니다! – user387990

-1

음. 응용 프로그램에 개발 및 프로덕션 구성을 저장하십시오. 데이터베이스 액세스 및 경로와 같은 것들. 우리는이

: 환경 폴더의 추가 예제 차드의 요청에 응답