visual-studio-2010 - 了解 Visual Studio 2010、AnkhSVN 和 SVN 1.7.4 的分支使用

标签 visual-studio-2010 svn ankhsvn

我是 Subversion 的新手,但我正在努力摆脱 SourceSafe 的可怕阴影。所以我正在学习,试图教自己什么是什么,但我遇到了一些我还不太明白的障碍。

SVN 1.7.3 已在本地 Linux 机器上启动并运行。 AnkhSVN 安装在我的 VS 2010 设置中。 VS/AnkhSVN 可以与我的存储库对话。所以我开始尝试一些非常简单的控制台项目来开始。我按照迄今为止找到的指南中的建议创建了 trunk、branches 和 Tags 目录。

我创建了一个新的控制台解决方案,并允许 Ankh 在我的存储库中推荐的“trunk”文件夹下创建该项目。在 Program.cs 中仅添加“Hello, World”行之后,我将更改提交到主干。这有效...到目前为止,一切都很好...

我现在想假装我正在一个私有(private)分支上工作,所以我从“trunk”和“Head/Latest”版本中选择 Subversion->Branch Project...,选中“创建后切换到分支” ”。看来进展顺利。

问题 1。

现在事情变得棘手了。我决定将单个源文件添加到我的私有(private)分支中的项目中,添加该文件,但我无法将文件从我的私有(private)分支移动到主干。合并/重新集成不起作用。更新不行啊开关不起作用。现在,在尝试从分支切换到主干后,VS 告诉我我的项目文件已损坏并且无法加载。

显然,我做了一些非常错误的事情,但我不知道是什么。看来我只需要获取主干工作副本,然后进行合并,但如何在 VS 项目文件夹设置中执行此操作?

问题2

我的下一个问题(可能是问题 1 的一部分)是了解应如何在 Visual Studio 端构造 Subversion 管理的项目。在 Unix 方面,我更清楚你可以将项目拖入本地文件夹,但根本不清楚 VS 项目的典型目录结构应该如何受到 Subversion 的影响。主干和分支文件夹是否也应该复制到本地 Visual Studio 机器上?如果我从主干“切换”到私有(private)分支(或反之亦然),则相应的文件应该进入同一组 VS 文件夹,或者分支和主干应该有相应的集合?

问题3 这更像是一个 SVN 新手问题,但是当 SVN 告诉我存在冲突时,我还不知道如何解决它们。 ankhSVN 插件是否有特殊的工具来解决冲突,或者我需要使用完整的 svn 工具在主机服务器上修复它们?如果是这样,需要解决的“最典型”冲突是什么?

最佳答案

要做的第一件事:至少阅读 Version Control with Subversion 的前两章并玩转示例。要执行后者,最好使用命令行客户端,例如 Slik SVN .

对于 SVN 客户端来说,AnkhSVN 本身是不够的 - 它只是将 SVN 集成到 VS 的便捷工具。因此,如果您想使用 GUI 客户端(除了命令行客户端之外,恕我直言,无论如何都是必须的),那么 Windows 上最流行的客户端是 Tortoise SVN .

(主动)阅读使用 Subversion 进行版本控制将帮助您解决当前的所有问题,但以下是一些初步想法:

问题 1 您提交了您的分支吗?您可以通过运行 svn info [repo_url]/branches/[your_branch]

进行确认

问题2 您似乎存在一些误解:SVN 也会在本地“拉取”(术语是“ checkout ”)您的文件。读本书!!!

一般来说,您的 SVN 结构应该反射(reflect)您的文件夹结构,而不是相反。通常,您一次只在一个分支上工作,并且只 checkout 一个分支。当您需要在另一个分支上工作时,您可以执行“svn switch”。它节省空间。现在,您当然可以从存储库根目录开始检查所有存储库,但为什么要这样做呢? (我可以想到这种情况,但他们更关心存储库维护,而不是常规工作流程)。

问题 3 冲突 - 在你读完这本书之前根本不值得讨论。

我希望这能为您指明正确的方向。阅读本书的前两章需要花费几个小时到几天的时间。

关于visual-studio-2010 - 了解 Visual Studio 2010、AnkhSVN 和 SVN 1.7.4 的分支使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10240078/

相关文章:

svn - "The last merge operation tried to add the file ' x.cs' but the file was returned in theworking copy."是什么意思?

linux - 在没有本地副本的情况下,在某些修订版和以前的修订版上调用 svn diff

svn - Ankh 无法使用 Visual Studio 2010 提交更改

visual-studio - 如何将 AnkhSVN 中的解决方案更新到最新版本?

svn - 如何避免svn :mergeinfos on sub-folders?

c++ - 在 Visual Studio 10 中带有库的 PDB 文件

svn - MS Visual Source Safe 的最佳开源替代品?

visual-studio - 解决冲突后在TFS中强制合并

c++ - PARITY_NONE C++ Windows 中的关键字?

entity-framework - 为动态数据网站添加自定义过滤器(VS2010、EF4)