빌드 서버에서 변경 사항이 있음을 인식했음에도 불구하고 소스 제어에서 수정 사항을 체크 아웃하지 않는 문제가 발생했습니다.
이 문제는 제어 폴더(실제 이름이 무엇인지 확실하지 않음)로 추적되었는데, 기존 작업 빌드는 _svn을 사용하고 있었습니다. 작업 폴더를 지우니 새 체크아웃이 강제로 완료되었고 이제 제어 폴더가 .svn이라는 것을 알았습니다. 원래 통합 루틴은 _svn을 사용하여 코드를 체크아웃했지만 이제는 .svn을 사용하는 것 같습니다.
*통합 중에 사용되는 svn.exe는 VisualSVN Server에서 가져온 것인데 _svn을 다시 사용하도록 설정할 수 있나요?
원래 작업 복사본이 _svn을 어떻게 사용했는지 모르겠습니다! - 저희는 VisualSVN Server만 사용해왔고 이를 변경하지 않았습니다.
Visual Studio에서 더 잘 작동한다는 권장 사항에 따라 _svn을 사용하도록 설정했으며, 혹시라도 필요할 경우를 대비해 빌드 서버에도 TortoiseSVN을 설치해 두었습니다. 이것이 원인일까요?
*또한 이것이 정말 필요한가요? MSBuild는 Microsoft의 것이므로 Visual Studio에 그대로 권장되나요?
svn 대 .svn에 대한 비즈니스는 Visual Studio 웹 프로젝트에서만 발생하는 문제였으며(어쨌든 VS2005에서 해결되었다고 확신합니다), 일반적으로 _svn이 VS에서 더 잘 작동한다는 것은 아닙니다.
또한 이는 저장소 문제가 아니라 작업 복사본 문제일 뿐입니다. 즉, 일부 SVN 사용자는 _svn을 수행하도록 설정된 클라이언트를 사용하고 일부 사용자는 .svn을 사용하더라도 저장소에서는 이를 알거나 신경 쓰지 않습니다(어떻게든 저장소에 이러한 _svn/.svn 파일이 실제로 체크인되어 극도로 혼란스러워지지 않는 한).
.svn이 문제를 일으킨다는 확실한 증거가 없는 한, 가능한 한 이 파일을 계속 사용하는 것이 좋습니다.