在 AnkhSVN 中创建分支会将整个存储库添加到分支而不是单个项目
我有一个包含所有 Visual Studio 项目的 Subversion 存储库。该存储库的组织方式如下:
repository/
branches/
project1_branch/
...
tags/
project1_tag/
...
trunk/
project1/
project2/
...
当我右键单击在 Visual Studio 2010 中打开的特定解决方案并选择 Subversion --> Branch Solution
默认的“发件人文件夹/URL”是 trunk
目录。
如何创建我正在处理的特定解决方案/项目的分支?
预先感谢您的帮助。
I have a single Subversion repository containing all my Visual Studio projects. The repository is organized as follows:
repository/
branches/
project1_branch/
...
tags/
project1_tag/
...
trunk/
project1/
project2/
...
When I right-click on a particular solution I have open in Visual Studio 2010 and choose Subversion --> Branch Solution
the default From Folder/URL is the trunk
directory.
How can I create a branch of just the specific solution/project I am working on?
Thanks in advance for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我想知道 AnkhSVN 是否假设存储库文件夹结构略有不同。如果我没有记错的话,“推荐”结构表明主干文件夹代表给定项目的稳定/当前代码库,而不是作为聚合多个项目主干的文件夹。也就是说,我希望看到一个更像这样的结构:
如果你从这个角度来看,从主干分支的 AnkhSVN 行为更有意义 - 它只是将子目录视为植根于“主干”的结构的一部分, “但不知道或不期望这些是离散项目的主干。
我谨建议从存储库根目录为“测试”项目构建一个顶级 project 文件夹,组织方式如上图所示,然后通过 AnkhSVN 进行练习,看看是否可能进行进一步的更改从长远来看,您的存储库结构可能最适合您。
I wonder if AnkhSVN is assuming a slightly different repository folder structure. If I'm not mistaken, the "recommended" structure suggests that a trunk folder represent a given project's stable/current code base, rather than as a folder that aggregates multiple project's trunks. That is, I would expect to see a structure more like:
If you look at it from that perspective, the AnkhSVN behavior of branching from trunk makes a bit more sense - it just sees the subdirectories as part of the structure rooted at "trunk," but doesn't know or expect those are discrete projects' trunks.
I would respectfully suggest building a top-level project folder from the repository root for a "test" project, organized as illustrated above, then exercise it through AnkhSVN, and see if perhaps a going-forward change to your repository structure might serve you best over the long term.
AnkhSVN 尝试猜测您的项目植根于树的哪个位置。在大多数情况下,这是工作副本的根目录。 (您没有检查工作副本根目录,不是吗?)。
如果您签出
^/trunk
(其中 ^ = 您的存储库根目录),AnkhSVN 会建议将其合并到^/branches/something
。(在不同级别进行签出可能会非常昂贵,并且会破坏分支成本低廉的 Subversion 模式。当您更新时,您将在本地计算机上创建所有“廉价”副本)
如果您希望 AnkhSVN 在不同级别进行分支,您可以通过“File->Subversion->Change Source control”设置项目根目录。然后选择您的解决方案上的选项。
AnkhSVN tries to guess in what place of the tree your project is rooted. In most cases this is the root of your working copy. (You didn't check out at the working copy root, didn't you?).
If you checkout
^/trunk
(where ^ = your repository root), AnkhSVN will suggest merging that to^/branches/something
.(Checking out at a different level can be very expensive and breaks the Subversion pattern where branching is cheap. When you update you would create all 'cheap' copies on your local machine)
If you want AnkhSVN to branch at a different level, you can set the project root via "File->Subversion->Change Source control". And then select the option on your solution.