在Visual Studio中导出和导入书签

32

是否可以从任何Visual Studio导出/导入书签?


我认为书签是特定于项目中的源代码,当你加载一个项目时,它们会自动加载。 - Searock
1
@Searock 但如果我有多个(“相同”的项目),并将书签制作成一个,如何将它们导出/导入到其他项目中(这是问题)?Jon 给出了可接受的答案。 - parzival
3个回答

23

一种更好的标签解决方案...

进入 工具/选项/环境/任务列表 并添加一个新的标签来记录它们。我想使用短语 MARK,但这个词在我的代码中太常见了,所以我使用 BOOKMARK 作为低优先级。

每当我想要留下书签时,只需输入 //BOOKMARK: this is a bookmark,简单明了! 要查看它们,只需打开 任务列表 窗口并按优先级或描述排序并向下滚动。

这比标准书签大幅改善,因为它们...

  • 与实际代码“固定”,不会漂移
  • 可以在自己的多个环境和其他开发人员之间共享
  • 如果您遇到 Visual Studio 的问题,永远不会丢失
  • 仍然可在其他编辑器中搜索和阅读,例如记事本
  • 您可以创建不同的标签来将不同类型的书签分组

你让我有了一丝希望。不幸的是,在C++中,它只显示已打开文件的任务,没有什么用处。任务列表比书签更好,因为它与代码行保持一致,但即使文件未打开,你也可以跳转到书签。 - Pierre
@Pierre,这是一个C++中已知的问题,有人建议使用Ghostdoc或Resharper来解决。请看以下相关讨论: https://social.msdn.microsoft.com/Forums/vstudio/en-US/1296549f-05d6-44ab-854c-2d73426e641f/task-list-in-visual-studio-2012-only-shows-currently-selected-files-todo-comments?forum=visualstudiogeneral https://dev59.com/lmoy5IYBdhLWcg3wEJ9n https://dev59.com/3nI95IYBdhLWcg3wxA09 https://dev59.com/0mDVa4cB1Zd3GeqPdW0D - userSteve
4
这是一个聪明的想法。但它会污染源代码。 - smwikipedia
1
如果你这样做了,那么当你现在将代码推送到源代码控制时,如何将其删除? - Alexander
2
@Alexander,如果书签可以使浏览代码更容易,则保留源代码控制中的书签可能是可取的。或者,您可以为书签使用唯一短语,以避免干扰其他用户,例如BOOKMARK_USER1。 - userSteve

22

书签存储在解决方案的 SUO 文件中。理论上,您可以通过复制该文件并导入/导出来实现书签的导入/导出,或将其放置在源代码控制中。但实际上,这样做是不明智的,因为该文件旨在供开发人员使用,并且覆盖它将会导致不良后果,除了导入书签之外。

然而,如果您有特定的情况,不会造成问题,那么您可以尝试这样做。


顺便说一下,在至少Visual Studio 2013中,".suo"文件是隐藏的,但它们位于解决方案文件夹中。 - Niki Romagnoli

2

我发现使用我找到的任何工具都不可能。

然而,有一个替代方案,你可以导入和导出断点。

这种方式存在一个问题,如果源代码与添加断点时不同,那么断点会始终停留在标记的行,可能并不是感兴趣的位置。

一种缓解方法是保存断点,并将它们与变更集一起检入到源代码控制中,这样它们至少会对特定代码版本保持忠实。

另外,如果你有Visual Studio Ultimate,可以使用代码映射功能,并构建你感兴趣的代码路径的相关部分。


+1 建议使用代码地图——这是一个经常被忽视的工具。我的当前项目已经足够大了,我需要不同的“视图”,因为它涉及到几个技术领域,这些领域不容易映射到功能需求上。我真的很喜欢你的代码地图想法,我将开始使用它——谢谢。 - Jazimov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接