SVN externals alternative in team foundation server 2012

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-03 10:53:02

There are a couple of suggestion in the Visual Studio Team Foundation Server Branching and Merging Guide.

If you download the "Everything" package and look in "All Guides" zip and have a read of "Advanced Version Control Guide".

Pages 5-19 (Version 2.1) cover Managing Shared Resources, there's a lot there and summarising it all for Stack Overflow will probably do the Ranger's an injustice, so I'll just point you there.

Bottom line: No TFS does not have an equivalent to "svn:externals".

Code Sharing is BAD and leads to code duplication and not code reuse. Be dependant on compiled code instead.

You should be dependant only on the "output" of the shared library and not on the source files. As to scenarios, I can think of no scenarios where it is advisable to share source files between products/solutions.

The reason being is that things can get complicated an unwieldy very quickly. What if you have move than one dependant to a shared library that all make changed to the same code and they alternately break each other. The only way around that is to start branching your common code into the other projects which now adds a level of complexity and integration that will never get handled in the long run and you will end up with three or more versions of the same code base over time.

What you should do is have a single core component that is changed and build to produce output. This output can then be pulled on demand into the other projects that depend on those changes or not. This results in fewer breakages, better architecture and less technical debt.

You can even introduce NuGet into the equation using either a hosted on in-house server to publish your common component and notify each of the consumers when a new version is available.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!