2012-03-03 5 views
2

현재 자동화 된 개발자 배포 센터의 일부로 소스 제어 제품을 검토하고 있습니다.RedGate 프로그래밍 방식으로 DB를 SVN에 연결

DB를 소스 컨트롤에 프로그래밍 방식으로 연결하려면이 작업을 수행하는 개발자가 필요합니다. RedGate SVN에서 가능합니까? 그렇다면 어떻게?

감사 데이비드

+0

관심있어, 당신이 바라는대로 모든 것을 준비 했습니까? 우리가 최근에 릴리스 한 릴리스 관리 도구에 관심이있을 수 있습니다. http://www.red-gate.com/delivery/deployment-manager/ –

답변

2

당신은 레드 게이트의 SQL의 명령 행을 찾고 프로 비교하는 일을 할 수 있어야합니다. 데이터베이스를 스크립트 아웃하고 데이터베이스의 변경된 오브젝트와 연관된 파일 만 변경할 수 있습니다.

그러나 당신이 생각하고있는 프로세스는 유익하지 않은 것 같습니다. 데이터베이스의 변경 사항을 자동으로 체크인하면 소스 코드 저장소를 쓸모없이 남겨 두는 변경 작업 도중에 무언가를 잡을 수 있습니다. 대신 개발자가 변경 작업을 마쳤을 때 코드를 확인하도록해야합니다.

체크인을 잊어 버릴 염려가있는 경우 저장소에서 데이터베이스를 다시 작성하고 이에 대한 테스트를 실행하는 지속적인 통합 환경을 설정하십시오. 이렇게하면 모든 개체가 소스 제어에 있는지 확인할 수 있습니다.

아직 데이터베이스 코드에 대한 자동 테스트가 없다면 tSQLt를 살펴보십시오. 테스트를 간단하게 작성하는 SQL Server의 테스트 프레임 워크입니다. 오픈 소스이며 여기에서 얻을 수 있습니다 : tSQLt – The Database Unit Testing Framework for SQL Server. 테스트를 작성하는 방법과 해당 사이트에서 tSQLt와의 지속적인 통합을 설정하는 방법에 대한 많은 정보가 있습니다.

+0

이 링크는 흥미로울 수 있습니다. SQL Compare Pro와 tSQLt가 사용됨을 보여줍니다 TeamCity CI 프로세스의 일부로 http://www.simple-talk.com/sql/sql-tools/using-sql-test-database-unit-testing-with-teamcity-continuous-integration/ –

4

OffScale DataGrove과 같은 제품을 사용하면 전체 데이터베이스 (데이터 & 스키마)의 전체 스냅 샷을 가져올 수 있으며 기존 소스 제어와 쉽게 통합 할 수 있습니다.

datagrove tag -n=<svn-tag-id> 

그리고 당신은 자동으로 일치하는 데이터베이스를 얻으려면 당신이 체크 아웃 할 때 커밋 SVN을 사용 : 다음 명령을 호출하여 커밋 할 때

그냥 데이터베이스에 태그를 훅을 후크를 사용하여 다음을 실행하십시오.

datagrove unload 
datagrove load -n=<svn-tag-id> 

DataGrove는 데이터베이스 관리가 간편하므로 필요하지 않습니다. 현재 제공되는 버전은 무료로 다운로드하여 사용할 수 있습니다.

+0

링크 된 버전을 다운로드 할 수 없습니다. 사이트. 403 오류가 발생합니다. –

+0

DataGrove의 라이선스는 무엇입니까? 그것은 FOSS입니까? – sampablokuper