2012-03-12 4 views
0

SVN을 사용하고 있지만이 질문은 모든 버전 제어 시스템과 관련이 있습니다.라이브러리 및 미디어 파일을 저장소에 저장해야합니까?

미디어 파일 (이미지, 비디오, XML 파일 등)을 사용하는 응용 프로그램을 개발할 때 거의 모든 응용 프로그램 버전 (또는 버전)이 이전 미디어 파일과 호환되지 않는 고유 한 미디어 파일 집합을 사용합니다 또는 미래) 버전의 파일. 이 응용 프로그램이 이전 버전 또는 향후 버전과 호환되지 않는 특정 버전의 타사 라이브러리를 사용하는 경우 이러한 바이너리 파일을 모두 저장소에 저장하는 것이 일반적입니다. SVN?

나는 그렇다고 생각합니다.

장점 : 프로젝트가 크고 일부 기능이 깨진되었거나 버그가 항상 "버전으로 업데이트의"을하고 버그가 등장 장소를 찾을 수 있습니다 나타났다

  • 합니다. 고쳐주세요.
  • 체크 아웃을하고 응용 프로그램을 구축하면 모든 것을 가지고 있기 때문에 당신은 응용 프로그램을

단점 구축 작업 카피에 필요한 쉽다 :

  • SVN 서버는 모든 저장하기 위해 많은 하드 디스크 공간이 필요합니다을 버전. 누군가는
  • SVN 업데이트

저장소에만 소스 코드 파일을 저장하는 다른 어떤 장점이 있습니까 느리다는 둔화되고 있다고?

답변

0

이미지, 비디오 및 XML 파일에는 작동하지 않을 수 있지만 타사 라이브러리는 별도의 SVN 저장소에 저장되며 모든 내용은 트렁크에 저장됩니다. 그것은 위대한 작품.

개발자는 로컬 컴퓨터에 체크 아웃하거나 네트워크를 통해 컴파일 할 때 필요한 파일을 가져올 수 있습니다. 우리는 로컬 환경 변수를 가리 키도록 Visual Studio 프로젝트 파일을 수정했습니다.이 파일은 SDK의 바이너리를 어디서나 연결합니다. 파일을 가정

이 OURSDK라는 로컬 작업 복사본에있는 환경 변수는 다음과 같습니다

:
>set OURSDK 
OURSDK=C:\Source\OURSDK 

그런 다음 우리는 대신에 상대 경로의 이러한 매크로를 사용하기 위해 C# 및 C++ 프로젝트 파일을 수정
AdditionalIncludeDirectories=""$(OURSDK)\log4cxx\src\main\include"$(OURSDK)\xerces-c\include";"$(OURSDK)\TSE-RegExp\Include"" 

우리는이 방법으로 3 가지 버전의 제품을 유지 관리하며 제 3 자 라이브러리와의 연결은 거의 문제가되지 않습니다. 사소한 장애는 라이브러리가 들어가서 거기에 머물러있는 "쓰기 전용"기능이므로 시간이 지남에 따라 서서히 커지고 있습니다. 그럴만 한 가치가있어. :)

관련 문제