2011-03-03 4 views
0

트렁크가 상상할 수없는 방식으로 엉망이 되었기 때문에 코드에서 작업 할 브랜치를 만들 예정입니다 (하지만 문제는 아닙니다). 내가 만든 지사를 주기적으로 백업하는 방법. 그것은 내 회사 서버에 위치 할 것이고 정기적으로 새 폴더로 분기를 체크 아웃하는 것이 "내 지사 백업"과 같은지 확실하지 않습니다.브랜치 백업

Repo에 가서 폴더를 내 데스크톱에 복사하는 것과 다른 점은 무엇입니까? .svn 파일에 분기 기록을 유지하는 데 필요한 모든 것이 포함되어 있으며 이전 버전으로 되돌릴 수 있습니까?

감사합니다.

업데이트 **

누군가 언젠가 함께 와서 가지를 삭제하려고하면 모르기 때문에 물어 이유입니다.

답변

1

따라서 Spaketh Chobo :

업데이트를 **

내가 물어 보는 이유는 누군가가 하나를 따라 올지 알지 못하기 때문입니다. 분기를 삭제하십시오.

Subversion에서 수행하는 작업은 모두 되돌릴 수 있습니다. 브랜치를 지우더라도 삭제되기 전에 리비전에서 다시 복사하기 만하면됩니다. 지금은 돌아 왔어, 우리는 다시 @99

$ svn cp -r99 svn://svn/branches/[email protected] svn://svn/my_branch 

를 사용하여 분기를 복사 할 수 있습니다 그리고 예를 들면 다음과 같습니다

,의이 지점이 개정 (100)에 다시 삭제 된 가정 해 봅시다!

브랜치를 정말로 보호하려면 사람들이 폴더와 파일을 수정하지 못하게하는 미리 커밋 훅을 사용할 수 있습니다. 나는 here을 사용하고있다.

1

분기를 백업 할 필요가 없습니다. Subversion은 버전 제어 시스템입니다. 변경 사항이 발생하면 누가 그것을했는지, 언제했는지, 변경 한 사항을 알 수 있으며 변경 사항을 취소 할 수도 있습니다. 이것은 버전 제어 시스템이하는 일입니다.

0

는이처럼 SVN 서버 생각할 수 :

서버의 상태를 변경할 때마다, 그것은 개정 번호로 식별되는 상태의 스냅 샷을 생성합니다.

해당 상태를 참조 할 때마다 해당 개정 번호를 체크 아웃해야합니다.

지금은 정확하게 작동하는 방법이 아닙니다. 모든 변경에 대해 완전히 별도의 스냅 샷을 만들면 엄청나게 비효율적 인 공간이 될 수 있습니다. 그러나, 그것은 마치 당신이 그렇게 한 것처럼 조작 할 수 있도록 설계되었으며, 당신을 위해 그것을 다시 만들어줍니다.

그래서 백업 문서를 열면이

을하는 구성 (현실을 Backup.txt와 부르 자). 저장소상의 SVN 정보를 수행

"백업"아래로 쓰기 현재 버전 번호

을 얻기 위해 나는이 날짜에 백업을했다 "라고 로그가있다. 그 상태를 백업 얻으려면, I 단지를 로그에서 리비전을 체크 아웃하십시오. "

기본적으로 당신이 요구하는 것은 전복으로 만들어 졌을뿐만 아니라 실제로는 이며, 전도의 목적은입니다. :)

0

은을 .svn 파일 내 지점 기록을 유지하고, 이전 버전으로 되돌릴 수 있어야 모든 것을 포함합니까?

아니요 .SVN 폴더는 기록을 유지하지 않습니다. 모든 기록은 서버의 저장소에 있으며 백업해야합니다.