[英]What's the best method for setting up a new .NET project?
So I'm newly in charge of projects at my company (We're still only 2 guys, but we're growing) and I want to set up my projects the right way. 所以我新负责我公司的项目(我们仍然只有2个人,但我们正在成长),我想以正确的方式设置我的项目。
All my projects are in an SVN repo already, I've got bug tracking software set up, but what I'm looking for is the best way to layout a new project with tests, SVN, and a build server. 我的所有项目都已经在SVN回购中,我已经设置了错误跟踪软件,但我正在寻找的是使用测试,SVN和构建服务器布局新项目的最佳方式。 I want to set up all our new projects for CI, but I'm not sure exactly how to lay everything out so it as smooth as possible.
我想为CI设置所有新项目,但我不确定如何将所有内容都放在一起,以便尽可能顺利。
I know I need: 我知道我需要:
How do you guys set up your projects? 你们是如何设置项目的? I want to use MSBuild for my build server, since everything is already set up that way thanks to VS, but I'm also looking for tips on how files should be laid out, how projects should be laid out in a solution, etc. As it stands, I've got about 5 projects in my solution, one of which is the testing project that contains all the tests for the rest of my projects.
我想将MSBuild用于我的构建服务器,因为所有内容都已经通过VS设置,但我也在寻找有关如何布局文件,如何在解决方案中布置项目的提示等。按照目前的情况,我在我的解决方案中有大约5个项目,其中一个是测试项目,其中包含我的其余项目的所有测试。 Is this the preferred method?
这是首选方法吗?
How about layout inside your repository? 你的存储库里面的布局怎么样? Where do you keep your DB related stuff?
你在哪里保存与数据库相关的东西? Specs and documents?
规格和文件?
Do you use any particular software for CI, or just follow the "Continuous integration is more like a state of mind" mantra? 您是否使用任何特定的CI软件,或者只是遵循“持续集成更像是一种心态”的口头禅?
In general, I'm looking for tips on getting a new project off the ground the right way, so everything proceeds as smooth as possible later on, as well as being easy for new developers to get acquainted to. 总的来说,我正在寻找以正确方式开展新项目的技巧,因此一切都会在以后尽可能顺利进行,以及新开发人员很容易熟悉。
Tree Surgeon - http://www.codeplex.com/treesurgeon 树外科医生 - http://www.codeplex.com/treesurgeon
"Tree Surgeon is a .NET development tree generator. Just give it the name of your project, and it will set up a development tree for you in seconds. More than that, your new tree has years worth of accumulated build engineering experience built right in." “Tree Surgeon是一个.NET开发树生成器。只需将它命名为您的项目,它将在几秒钟内为您设置开发树。不仅如此,您的新树还具有多年积累的构建工程经验。在。”
Alex, 亚历克斯,
I'd suggest you start here: http://msdn.microsoft.com/en-us/library/ms998208.aspx 我建议你从这里开始: http : //msdn.microsoft.com/en-us/library/ms998208.aspx
That covers Microsoft's own project structure recommendations. 这涵盖了微软自己的项目结构建议。 By the sounds of it you should indeed look to stick to the single solution architecture.
通过它的声音你应该确实坚持单一的解决方案架构。
In terms of a particular CI platform, there are obviously several options available. 就特定的CI平台而言,显然有几种选择。 Some of this comes down to taste as well as functionality.
其中一些归结为品味和功能。 Searching the net should give you most of the answers you need on the pro's and con's front!
搜索网络应该可以为您提供所需的大部分答案!
Nick. 缺口。
Cruise Control is a great product for Continuous Integration. Cruise Control是持续集成的绝佳产品。 Another option that is a little "easier" to set up is Jet Brains's TeamCity .
设置的另一个选择是Jet Brains的TeamCity 。
我将第二次投票选为Cruise Control作为CI,并注意到CruiseControl.NET与MSBuild的集成非常好。
So I change my structure as I learn but currently: 所以我在学习时改变了我的结构,但目前:
(SVN REPO)
/trunk
MyProject <-- solution & .build file (i use nant or msbuild)
conf <-- IIS Settings etc go here
docs <-- that documentation i never do
lib <-- 3rd Party libraries eg ApplicationBlock,ASPNet MVC
src
Web
Data
Business
test
Web.Test
Data.Test
Business.Test
tools
nant
nunit
moq
Project2
conf
lib
src
test
tools
/branches
/tags
Hopefully you should see my structure above 希望你应该看到我的结构
Jenkins is a great product. 詹金斯是一个很棒的产品。 Have very plugins and a active comunity.
有非常插件和活跃的社区。
Totally compative with .NET. 与.NET完全一致。 Support the machine slaves.
支持机器从站。
TeamCity是一个非常好的CI产品,它对于一定数量的项目是免费的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.