我将我的代码添加到源代码管理(SVN)。我正在尝试组织我的项目和解决方案以适应SVN最佳实践。我显然不想为每个用户添加垃圾和更改的东西。 MyProject文件夹到底包含什么。这似乎是Visual Studio创建和维护的东西。它似乎包含汇编和参考信息。我认为这应该在版本控制之下。我查看了其他问题,但没有人提到MyProject文件夹。
最后的事情。我的解决方案中有两个项目。一个用于代码,一个用于单元测试。这为SVN创建了一些奇怪的结构和命名问题。 SVN最佳实践建议
repo
|- Project
|-trunk
|-branches
|-tags
让我留下了
repo
|- Project X
|- trunk
|- Project X
|- Unit Tests
|-branches
|-tags
现在我在repo结构中重复了项目X.不是火车粉碎,但感觉不整洁。有没有办法将Visual Studio解决方案/项目布局与SVN repo布局进行协调。我是否应该尝试重命名Visual Studio中的项目或将较低的Project X重命名为source?
或者我应该忍受它吗?任何建议都是最受欢迎的。
答案 0 :(得分:1)
My Project
文件夹肯定应该受版本控制。
从SVN的角度来看,您的“项目文件夹”应该是包含My Project
的父文件夹,以及bin
,obj
,您的.sln
文件等。< / p>
此父文件夹还应将svn:ignore
设置为以下内容:
bin
obj
*.user
*.suo
此外,此“项目文件夹”应该是您的trunk
,branches
和tags
目录中的内容。
答案 1 :(得分:0)
您仍然可以将项目放入。
只要您使用 svn:ignore 属性
过滤掉所有用户设置答案 2 :(得分:0)
关于你关于结构的最后一个问题:我认为结构中重复“Project X”很好。第一个实例(上面的主干,分支和标签)是一般方式的项目名称 - 它不一定是Visual Studio解决方案的名称。
在trunk下,您将拥有作为解决方案一部分的所有Visual Studio项目。在一个小项目中,它可能看起来像你的例子,但随着复杂性的增加,你可能会将你的代码库分成几个VS项目。
示例:
repo
|- Blog
|- trunk
|- Blog.Web
|- Blog.DomainModel
|- Blog.Tests
|- branches
|- tags