2014-03-13 3 views
2

최근에 전환 된 작업과 함께 TFS에서 SVN으로 소스 제어를 전환했습니다. 이는 나에게 새로운 것입니다.VisualSVN - 자동 체크 아웃 사용 안 함

TFS에는 파일을 입력하기 시작할 때 자동 체크 아웃을 사용하지 않도록 설정할 수있는 옵션이 있습니다. 기본적으로 활성화되어 있으며 많은 사용자가이 동작을 좋아하지만 커밋하기 전에 무엇이 변경되는지 확실하게 알고 싶어합니다. 개인적인 것.

기본적으로 VisualSVN 자동 체크 아웃. 거기에 비슷한 옵션을 해제 할 수 있습니까? 나는 설정에서 알아낼 수 없습니다.

+2

커밋하기 전에 항상 변경 사항을 검토하면 변경 사항을 서버에서 정확히 볼 수 있습니다. – crashmstr

+0

도와 주셨을 경우 동의 및/또는 upvote 수 있습니다. 감사! – bahrep

답변

3

SVN과 TFS 세계에서 "자동 체크 아웃"용어는 내가 보는 한, 다른 의미를 가지고 있습니다.

Subversion에서 체크 아웃은 저장소에서 작업 복사본을 가져 오는 svn checkout 작업과 관련됩니다. TFS에서는 용어가 자동 잠금 메커니즘과 관련이있는 것처럼 보입니다.

Visual Studio에서 VisualSVN 확장명을 사용하여 파일을 수정하기 시작할 때 자동으로 파일을 잠 그려면 KB 문서 "Lock-Modify-Unlock Model with VisualSVN"을 참조하십시오. 또한 SVNBook 장 "Locking"을 읽는 것이 좋습니다.

일반적으로 파일에 svn:needs-lock 속성을 설정할 수 있습니다. 이 속성은 편집하기 전에 잠글 파일을 클라이언트에 지시합니다. svn:need-lock을 파일에 적용한 후 파일은 읽기 전용 속성을 갖습니다. 파일을 편집하기 전에 사용자가 명시 적으로 잠글 수 있어야합니다. 커밋 후 잠금은 기본적으로 해제됩니다.

+0

문제는 - 이것은 모든 사람에게 적용됩니다. OP는 "VSS 모드"에서 실행하고 싶어합니다. 다른 파일은 일반적인 수정 - 커밋 - 병합 모델에서 작동하지만 모든 파일은 읽기 전용으로 체크 아웃됩니다. – gbjbaanb

+1

참고 사항 : Subversion의 경우 일반적으로 두 가지 변경 사항이 병합되지 않는 바이너리 파일 (예 : 데이터베이스 파일)에서 작업 할 때만 잠글 필요가 있습니다. 이 경우 파일을 수동으로 잠글 수 있어야합니다. – crashmstr

+1

정보를 제공해 주셔서 감사합니다. 그러나 명확성을 위해서 - 이것은 다른 사람들이하고있는 것과는 아무런 관련이 없습니다. 필자가 키보드를 트윗하기 때문에 브라우징하는 파일을 소스 컨트롤이 자동으로 체크 아웃하는 것을 싫어할뿐입니다. 나는 많이 트 와이프 :) –

2

짧은 대답 : 나는 당신이 매우 인기가 없게하지 않고 이것을 할 수 있다고 생각하지 않습니다.

난 당신이 SVN 특히 환경에서 versioning models

, 모두 로컬로 파일을 수정 한 다음 서버에 변경 사항을 보낼 수 있도록 원하는 작동 방식의 SVN redbook의 설명을 읽어해야한다고 생각 필요한 경우 변경 사항을 동료의 변경 사항과 병합합니다. 이 접근 방식은 2 명의 사람들이 항상 대부분의 개발자가 사용하는 동일한 파일을 변경하지 않는 경우 잘 작동합니다.

이전 TFS/VSS 모델에서 작업 할 체크 아웃 파일은 오늘날 상당히 쓸모가 없습니다. 독점적 액세스가 있다고 가정 할 때 '낙관적 인'방식이 훨씬 생산적입니다. (평소와 같이 용서를 구하는 것이 잘못 될 경우 매번 권한을 요청하는 것보다 쉽다)

당신의 동료는 당신의 동료가 병합 모델을 사용하고 있다면 당신도 잘해야한다. 파일을 잠글 수 없으며 파일을 언제든지 변경할 수 있다고 기대할 수 없습니다.

이제 VisualSVN을 모르지만 TortoiseSVN (멋진 도구)을 client hooks으로 실행할 수 있습니다. 즉, 모든 프로그램을 실행할 수 있습니다. 그 프로그램은 모든 파일의 읽기 전용 플래그를 설정하는 것처럼 간단 할 수 있습니다. 이것이 당신을위한 신인지 아닌지는 또 다른 문제입니다.

개인적으로, 나는 언제든지 당신이 좋아하는 것이 무엇이든간에 변화에 대한 생각에 익숙해 질 것입니다. 실수로 파일을 편집하면 변경 표시기 (변경된 파일의 경우 AnkhSVN이 파일 아이콘을 주황색으로 표시 함)와 원하지 않는 'svn 되돌리기'변경 사항을 쉽게 볼 수 있습니다. 또한 SVN을 사용하면 diff를 정말 쉽게 볼 수 있습니다. 특히 커밋시 커밋 대화 상자에서 파일을 두 번 클릭하십시오. 도구를 사용하지 않고도 작업 할 수있게 됨으로써 생산성이 향상되었습니다 (파일을 편집하려고 시도하면서 TFS에서 지속적으로 핑 소리가 들리는 것처럼 보였습니다).SVN 툴은 당신에게 "용서를 구하십시오"라고 말하면 정말 좋으므로 진부한 오래된 TFS 방식으로 실행할 필요가 없으므로 더 나은 것으로 업그레이드되었습니다.

다른 장점은 VS (예 : 생성 된 WCF 클라이언트 스텁) 외부에서 편집 된 프로젝트 파일을 가지고 있다면 Visual Studio 프로젝트에없는 파일에 적용된다는 것입니다. 그런 다음 SVN 작품은 결코 다시는 완전한 커밋을하지 않으며 TFS가 변경된 파일이 변경되지 않았으므로 커밋 될 필요가 없다고 결정했습니다!