문제

소스 컨트롤에 .SLN 파일을 커밋하는 것이 모범 사례입니까? 그렇게하는 것이 언제 적절하거나 부적절합니까?

업데이트답에 몇 가지 좋은 점이있었습니다. 응답에 감사드립니다!

도움이 되었습니까?

해결책

다른 답변에서 솔루션 파일이 유용하고 공식 빌드에 사용되지 않더라도 커밋되어야한다는 것이 분명하다고 생각합니다. Go To Definition/Declaration과 같은 Visual Studio 기능을 사용하는 사람에게 편리합니다.

기본적으로 절대 경로 나 다른 기계 별 아티팩트를 포함하지 않습니다. (불행히도 일부 애드온 도구는이 속성을 제대로 유지 관리하지 않습니다. 도.

아마도 더 유용한 질문은 다음과 같습니다. 어떤 파일을 제외해야합니까? 다음은 VS 2008 프로젝트에 대한 .gitignore 파일의 내용입니다.

*.suo
*.user
*.ncb
Debug/
Release/
CodeAnalyst/

(마지막 항목은 AMD CodeAnalyst Profiler를위한 것입니다.)

VS 2010의 경우 다음을 제외해야합니다.

ipch/
*.sdf
*.opensdf

다른 팁

예 - 항상 적절하다고 생각합니다. 사용자 별 설정은 다른 파일에 있습니다.

예, 당신은 이것을해야합니다. 솔루션 파일에는 솔루션의 전체 구조에 대한 정보 만 포함되어 있습니다. 이 정보는 솔루션의 글로벌이며 프로젝트의 모든 개발자에게 공통적 일 수 있습니다.

사용자 별 설정이 포함되어 있지 않습니다.

당신은 분명히 그것을 가지고 있어야합니다. 다른 사람들이 언급 한 이유 외에도 전체 프로젝트를 한 단계 구축해야합니다.

나는 일반적으로 솔루션 파일을 체크인해야한다는 데 동의하지만, 내가 일하는 회사에서는 다른 일을했습니다. 우리는 상당히 큰 저장소를 보유하고 있으며 개발자는 때때로 시스템의 다른 부분에서 작업합니다. 우리가 일하는 방식을 지원하기 위해 하나의 큰 솔루션 파일 또는 몇 가지 작은 것이 있습니다. 이 두 가지 모두 몇 가지 단점이 있으며 개발자 부분에서 수동 작업이 필요합니다. 이를 피하기 위해 모든 것을 처리하는 플러그인을 만들었습니다.

플러그인을 통해 각 개발자는 저장소에서 관련 프로젝트를 선택하여 단순히 작업 할 소스 트리의 서브 세트를 확인할 수 있습니다. 그런 다음 플러그인은 솔루션 파일을 생성하고 주어진 솔루션에 대한 프로젝트 파일을 즉시 수정합니다. 또한 참조를 처리합니다. 다시 말해, 개발자가해야 할 모든 것이 적절한 프로젝트를 선택하는 것입니다. 그런 다음 필요한 파일이 생성/수정됩니다. 또한 회사 표준을 보장하기 위해 다양한 다른 설정을 사용자 정의 할 수 있습니다.

또한 플러그인을 사용하여 다양한 체크인 정책을 지원하므로 일반적으로 사용자가 결함/비준수 코드를 저장소에 제출하지 못하게합니다.

예, 저지해야 할 것은 다음과 같습니다.

  • 솔루션 (*.Sln),
  • 프로젝트 파일,
  • 모든 소스 파일,
  • 앱 구성 파일
  • 스크립트를 구축하십시오

당신이해야 할 것들 ~ 아니다 커밋은 다음과 같습니다.

  • 솔루션 사용자 옵션 (.SUO) 파일,
  • 생성 파일 빌드 (예 : 빌드 스크립트 사용) 편집하다: - 필요한 모든 빌드 스크립트 및 도구가 버전 제어에서 사용할 수있는 경우에만 (CVS 이력에서 빌드가 정통인지 확인)

자동으로 생성 된 다른 파일과 관련하여 a가 있습니다 별도의 스레드.

예, 소스 컨트롤의 일부 여야합니다. 응용 프로그램에서 프로젝트를 추가/제거 할 때마다 .SLN이 업데이트되며 소스 제어하에있는 것이 좋습니다. 응용 프로그램 코드 2 버전을 꺼내고 빌드를 직접 수행 할 수 있습니다 (필요한 경우).

예, 항상 .sln 파일을 포함하려고합니다. 솔루션에있는 모든 프로젝트에 대한 링크가 포함되어 있습니다.

대부분의 상황에서는 .sln 파일을 소스 제어에 커밋하는 것이 좋습니다.

.SLN 파일이 다른 도구 (예 : CMake)에 의해 생성 된 경우 소스 컨트롤에 넣는 것은 부적절 할 수 있습니다.

우리는 모든 것을 동기화하기 때문에합니다. 필요한 모든 프로젝트는 함께 위치하고 있으며 아무도 누락 된 것에 대해 걱정할 필요가 없습니다. Build Server (Ant Hill Pro)는 SLN을 사용하여 릴리스를 위해 구축 할 프로젝트를 확인합니다.

우리는 일반적으로 모든 솔루션 파일을 솔루션 디렉토리에 넣습니다. 이런 식으로 우리는 솔루션을 코드에서 조금 분리하고 작업해야 할 프로젝트를 선택하는 것이 더 쉽습니다.

소스 제어에 저장하지 않는 유일한 사례는 소스 제어에있는 많은 프로젝트가있는 큰 솔루션을 가지고 있고 일부 주요 솔루션의 일부 프로젝트와 함께 작은 솔루션을 만들고 싶었을 것입니다. 개인 과도 요구 사항.

예 - 제품을 생성하는 데 사용되는 모든 것이 소스 제어에 있어야합니다.

우리는 TFS 버전 제어에 파일을 보관하거나 솔루션을 유지합니다. 그러나 주요 솔루션 또는 주요 솔루션은 실제로 크기 때문에 대부분의 개발자는 필요한 것만 포함 된 개인 솔루션을 가지고 있습니다. 기본 솔루션 파일은 주로 빌드 서버에서 사용됩니다.

.slns는 우리가 유일한 것입니다 하지 않았다 TFS에 문제가있었습니다!

1) vs에서 새 프로젝트를 만듭니다
2) 솔루션 탐색기의 솔루션을 마우스 오른쪽 버튼으로 클릭하고 소스 제어에 추가를 선택하십시오.

SLN이 소스 제어에 추가됩니까? 그것이 당신의 대답입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top