2010-01-18 3 views
3

현재 모든 PHP 웹 사이트를 SVN 리포지토리로 가져오고 있습니다. 각 사이트에는 모든 사이트 이미지가 포함 된 이미지 폴더가 있습니다. 대부분의 그래픽이 제공되므로 이미지가 자주 업데이트됩니다.웹 사이트의 이미지 폴더와 이미지를 SVN 저장소에 저장해야합니까?

이미지 (바이너리)를 저장소에 저장해야합니까?

다른 문제는 항상 업데이트된다는 것입니다. 업데이트 된 이미지로 대체해야하는 소스 파일처럼 텍스트 편집에서 소스를 편집 할 수 없으므로 작업 사본에있는 이미지를 자주 업데이트 하시겠습니까? 버전 시스템에서 어떻게 처리합니까?

답변

4

SVN은 이미지 (이에 국한되지 않음)를 비롯한 이진 파일을 처리 할 수 ​​있습니다. 일반 텍스트 파일처럼 사용할 수 있습니다. 유일한 차이점은 한 번 변경되었으며, 전체 텍스트 파일과 같은 패치가 아닌 전체적으로 변경되었습니다.

+0

이미지 묶음을 바꾸려면 방금 my 새 복사본으로 작업 복사본을 만든 다음 저장소에 작업 복사본을 커밋 하시겠습니까? 작업 복사본에 새 파일과 폴더를 만들고 이미지를 업데이트 할 때 기본적으로 한 이미지를 동일한 이름의 새 이미지로 바꿀 것을 요구했기 때문에 내가 묻는 이유가 있습니다. – Camsoft

+0

SVN은 변경 사항을 감지하는 것이 현명합니다. 파일에 무엇이든 할 수 있고 다음에 커밋을하면 탐지가 수행됩니다. 파일이나 디렉토리를 삭제하거나 추가하려면 특정 svn 명령을 명시 적으로 호출해야합니다. – nanda

2

주어진 시간에 사이트의 "스냅 샷"을 보려면 (기록의 모양을 추적하십시오) 대답은 예 :)입니다.

1

우리는 SVN에 "컨텐츠"유형 이미지 (또는 다른 바이너리)를 포함하지 않으려 고합니다. 많은 사이트에서 고해상도 이미지와 PDF를 다운로드 할 수 있습니다. 이것들은 SVN에서 체크 아웃을합니다. 코드를 작성하는 개발자는 매우 긴 작업입니다.

한 가지 아이디어는 두 개의 별도 리포지토리를 보유하는 것이 었습니다. 하나는 코드 용이고 다른 하나는 "비 코드"바이너리 용 (즉 일반 내용)입니다. 그런 다음 각 사이트에 대해 '출시'스크립트를 만들어 각 사이트의 해당 부분을 내보내 전체 사이트를 만들 수 있습니다. 이는 콘텐츠 팀이 코드 바이너리에 끈적 거리는 손가락을 넣을 위험없이 콘텐츠 바이너리를 가지고 놀 수 있음을 의미합니다.)

+0

흥미로운 아이디어, 가능한 한 간단하게 유지해야합니다. 각 사이트마다 다른 저장소가 있으므로 각 사이트에 대한 스크립트를 만들어야합니다. – Camsoft

+0

예, 약간의 고통이 될 것입니다. 프로젝트마다 하위 폴더가있는 단일 코드 저장소가 있으므로 폴더 구조를 미러링하여 콘텐츠를위한 초를 만들고 폴더 이름을 사용하고 나머지 내보내기를 자동화하는 도구를 작성합니다. –

0

프로젝트를 "웹 사이트"로 정의 할 때 나는 계속해야한다고 생각합니다. 전체 프로젝트가 동일한 위치에 있으며, 버전이 지정되고, 백업되어 있어야합니다. 이미지는 프로젝트의 일부분이기도합니다. 또한 자주 변경되거나 여러 사람이 작업합니다.

SVN은 다른 유형의 파일을 보관하고 버전을 유지할 수 있습니다. 물론 바이너리 파일에는 몇 가지 제한 사항이 있습니다. 그러나 SVN을 사용하는 팀간에 번거롭지 않은 작업을 즐길 수 있습니다.

FTP 호스트 또는 로컬 컴퓨터에 사이트를 배포하는 좋은 방법은 후크 스크립트를 사용하는 것입니다. 간단한 포스트 커밋 스크립트를 사용하면 테스트 URL로 사이트를 복사하고 누군가가 변경 될 때마다 사이트를 복사하지 않아도됩니다.

관련 문제