문제

나는 완전한 웹 개발 환경을 설정하는 과정에 있습니다. 현재 백엔드 프로그래밍 전용 (C#, .NET)과 프론트 엔드 개발 전용 (HTML, CSS, XSLT)이 있습니다.

각각 MS Visual Studio 2008을 설치하고 Visual Source Safe 2005를 통해 공유 소스를 보유하고 있습니다. 파일을 확인하고 로컬로 개발합니다.

합병 및 테스트 된 코드가 마침내 끝나야하는 계획 인 곳에서 테스트 서버를 설정했으며 서버가 "올바른"버전이어야합니다.

3 개의 설치 각각은 동일한 데이터베이스를 공유합니다.

더 많은 개발자를 준비하고 있기 때문에이 설정은 약간 확장되어야한다고 생각하지만 파일 동기화에 많은 문제가 있고 빠른 변경을 위해 쉽게 액세스 할 수 있습니다. 종종 우리는 종종 일부 레이아웃과 디자인을 매우 빠르게 변경하고 테스트 서버에 파일을 복사하여 수동으로 복사해야합니다 (웹 서버의 .NET/C# 코드 파일을 원하지 않음).

우리는 표준 CMS를 사용하여 모든 프론트 엔드 작업을 구축하며 소스 안전에 포함되면 실제로 속도가 느려집니다.

모든 프론트 엔드 작업이 백엔드 코드에서 완전히 분리되어 쉽게 변경할 수 있기를 바랍니다.

예를 들어. 우리는 설계를 몇 가지 변경하고 .NET 코드에 대해 생각하지 않고 제작 환경에 빠르게 배포하고 싶습니다.

내가 놓친 것이 있습니까, 아니면 웹 개발 환경을 설정하기위한 모범 사례는 무엇입니까?

도움/경험을 기대합니다 :-)

/도마

도움이 되었습니까?

해결책

아마도 다성전 가능한 버전 제어 시스템을 살펴 봐야 할 것입니다. SVN은 훌륭한 도구 지원이 있습니다 (포함 ankhsvn 그리고 visualsvn VS2008 통합의 경우) 및 Mercurial, Git 또는 Bazaar와 같은 분산 버전 제어 시스템은 훨씬 더 많은 옵션과 훨씬 더 기본적인 도구 지원의 가격을 제공합니다.

쉬운 분기가 필요할 수 있으며, 버전 제어 시스템을 사용하여 관련 리소스를 관리하는 것이 쉽게 생산에 쉽게 배포 할 수 있다면 훨씬 쉬워집니다 (예 : "SVN UP").

다른 팁

CMS 컨텐츠를 처리하는 방법에 대한 정보는 도움을 줄 수 없지만 몇 개의 빌드 서버를 설정하거나 사용했습니다.

많은 프로젝트 및 팀 파운데이션 서버에서 Visual Source Safe와 함께 일한 후, 가능하면 멀리 떨어져 있습니다.

우리의 최근 BuildServer는 전복 자리에서 소스를 확인하는 Nant 스크립트로 구성됩니다. 빌드 자체는 MSBuild에 의해 수행됩니다. 빌드의 결과는 무대와 생산으로 xcopied됩니다.

데이터베이스 변경을 개발에서 단계 및 제작으로 전송하는 쉬운 방법이 있어야합니다. 도구가 있습니다 (http://www.codeplex.com/scriptdb) 이는 Dev-database를 스크립팅합니다. 결과는 전복으로 확인됩니다. 전복 로그에서 무엇이 바뀌 었는지 쉽게 알 수 있습니다.

3 개의 설치 각각은 동일한 데이터베이스를 공유합니다.

이것은 잘못된 결정처럼 보입니다. Dev1, Dev2 및 Test가 모두 동일한 데이터베이스를 사용하는 경우 Dev1이 Dev2 및 테스트를 방해하지 않고 스키마 변경을 실험하는 방법 (실험 스키마 작업을위한 코드가 아직 체크인되지 않은 것으로 가정).

또한 DB는 단일 실패 지점이되므로 누군가가 실수로 중요한 테이블을 삭제/잘린 경우 모든 작업이 중단됩니다.

이상적으로는 각 환경에는 자체 DB가 있어야합니다. Oracle과 같은없는 DB를 사용하는 경우 각 환경에 자체 서버를 제공 할 여유가 없지만 적어도 각 환경에 자체 스키마가 있어야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top