Sourcetrail是一款专业的源码管理工具。编程人员都在使用的源码管理工具Sourcetrail。软件提供源管理功能,您可以在软件中创建源项目,可以设置项目索引,这方便在该软件中查询源代码。可以复制源代码内容,无论是个人还是企业,都可以通过此软件创建,您可以在软件中创建C ++项目,可以创建一个C语言项目,可以创建一个Java项目,可以创建一个Python项目,提供类似的思维地图方式可视化您的代码项,代码项目可以构建索引,鼠标单击相关源组可以展开项目以查看源代码。您可以在图形界面中查看索引符号。您可以轻松在搜索栏中轻松访问所有索引符号。如果您需要这个软件,请使用它来查找您要学习的所有类和功能!
使用说明:
1.您正在查看SourcEtrail代码视图,通常显示源代码,但每次加载新项目时,它都可以快速摘要来估算项目的大小。这是一个相当小的项目。如下所示,它仅包含几百行代码。
2.如您所知,“代码视图”显示与当前活动符号相关的代码片段。这些摘录将某些上下文组合以显示相关行。
代码段上下文中发现了一些有趣的内容,则可以通过单击鼠标左键激活符号。这样,您可以更深入地研究代码库。
你想活着吗,宇宙的含义是什么?单击相应的符号以查找。单击代码视图右上角的“代码列表模式”按钮。
4,这是SourceTrail教程的中心。在这里,您可以在这里旅行,探索不同的Sourcetrail部分。最重要的是:您将学习如何与Sourcetrail的所有部分互动。
以功能参考所有可用的教程。因此,选择一个并立即采取行动。
5.我们刚刚与Sourcetrail交谈,为重要的代码线提供了背景。
但感觉就像一些东西缺失。什么是“the_question”?它从哪里来的?
3-扩展范围
你看到这个代码段的第一行吗?我的意思是,只有两点作为行号,并显示为“deep_hough”。实际上,这是包代码段的函数范围的名称。通过单击此行,您可以告诉SourceTrail扩展视图以显示整个范围。
6,不再
在此阶段,您将看到整个文件,您无法扩展其他上下文。
在此配置文件的最后一部分,让我们来看看“Unrelated_but_very_important()函数
7--碎片和文件
此功能似乎在同一文件中调用两个不同的位置。当两个不同的片段位于同一文件中时,它们共享一个文件框。左侧的行号表示文件中的每个代码段的位置。
8-组片段
每个提取的第一行都显示了其父范围的名称。
如果要在以下两个段之间显示行,
可以扩展上述段的范围以显示整个文件,或者您可以告诉以下段显示其范围。
现在尝试其中一个方法。
9,1-图形教程
在SourceTrail的默认窗口布局中,图形显示在代码的左侧。它显示了项目的结构,其中所有命名符号都是节点,所有关系都是边缘。与代码视图一样,它只显示当前活动和所有传入和传出依赖项的符号。
如果要查看存在哪些节点和边缘类型,请单击“?”图片视图右下角的图标以显示图例。
10-我如何浏览图表
您可以通过单击感兴趣的节点上的鼠标左键激活新符号。例如:找到函数的呼叫位置“where_am_i_drawn()”,移动到图形,然后单击函数的节点。
11 - 做得好
您激活节点,图形和代码视图已更新。
请注意,即使SourcEtrail提供图形视图,它也不会消除对读取代码的需求。图形视图非常适合快速理解和导航代码,但是一旦找到您有兴趣的内容,您仍应考虑使用代码视图以实际阅读所有重要细节。
12 - 隐藏元素
为了不泛滥信息,图表隐藏了很多元素。你看,例如,“classwith hiddenmembers”吗?实际上,它包含您目前看到的更多成员。隐藏对当前上下文并不重要的成员。但是,您可以通过单击类名旁边的箭头来显示它们。现在尝试并阅读这些成员的名称。
软件功能:
1为您的源代码准备索引
Sourcetrail的深入静态分析可以在源代码文件中找到所有定义和引用。要启动静态代码分析仪,您可以导入现有的构建配置或选择手动项目设置。
2找到任何符号
使用SourceTrail的搜索栏可在整个代码库中快速查找任何符号。模糊的代码搜索引擎可以给您最佳匹配键盘。
3视觉探索依赖性
图形可视化提供了任何感兴趣的类,方法,字段等以及所有关系的快速概述。关系图是完全交互式的。使用它通过关注相关节点和边缘来在代码库中移动。
4浏览您的源代码
最后,代码视图保存在整洁的代码段列表中的焦点元素的所有实现细节。进一步检查范围并突出显示本地变量,或注意任何其他引用或元素。
5连接源代码编辑器
通过插件将SourceTrail与您喜欢的源代码编辑器同步。这允许您轻松在写作和探索之间切换。
官方教程:
书签经理
使用书签管理器查看并激活您的书签。书签在其相应的类别中显示。如果书签没有类别,则将放在默认类别中。仅在将鼠标悬停在相应的行上时,才能删除/编辑类别或书签的按钮。书签信息存储在项目文件旁边的单独的.srctrlprj文件中.srctrlbm。
互动方式:
单击名称激活书签。
通过单击书签,打开/折叠书籍标志评论。
单击“编辑”按钮以更改书签的内容。
单击书签上的“删除”按钮以删除书签。
单击类别打开/折叠类别。
单击类别中的删除按钮以删除此类别和所有书签。
更改显示滤波器在节点和/或边缘之间切换。
更改排序以更改其类别中书签的顺序。
国家检查
此视图提供了一个不同的选项卡,其中包含有关项目的信息。默认情况下隐藏此视图。
互动方式:
单击顶部的顶部以在选项卡之间切换。
单击-Contron-uch,关闭状态视图。
状态标签
下表提供了一些有关STASTCETRAIL运行时状态更新的一些信息。它将能够帮助一些事情与期望不同。
互动方式:
双击表格单元格以选择要复制和粘贴的文本。
使用以下复选框来过滤显示的消息。
单击“清除表”以删除表中的所有行。
错误标签
此列表显示索引过程中发生的错误。
提供以下信息:
类型:错误或致命。致命错误导致大量信息,因为索引器必须在此错误处停止。
错误信息
文件
电话号码
已准备好索引:文件是否在已索引的文件中。
转换单元:在索引时生成此错误的源文件。
互动方式:
单击“错误”行以在代码视图中查看错误的位置。
单击标题以订购或下降错误行到错误行。
双击表格单元格以选择要复制和粘贴的文本。
使用以下复选框以某种情况过滤显示所显示的错误。
单击“编辑项目”以打开“编辑项目”对话框。
工具提示
显示有关图形视图和代码视图中悬停符号的信息
提供以下信息:
符号类型
可见性(如公共或私人)
参考计数
符号名称
单击类型的全局变量和字段。
您可以单击“返回”名称和参数类型的函数和方法名称。
互动方式:
击符号名称以激活它。
项目设置
SourceTrail中的项目设置通过项目设置向导完成,可以通过单击“开始”窗口中的“新建项目”或“使用”项目“菜单访问新项目来访问。
和
项目设置向导,您可以创建一个新的SourceTrail项目。它允许定义SourceTrail项目的名称和位置,并添加一些源组以定义建立哪些源文件的索引。有几种方法可以创建源组。对于大多数项目,它足以添加一个源组。
将源组添加到项目后,此对话框允许您编辑其配置并删除或复制它们。
描述
Sourcetrail项目名称:项目的名称。这也将是.srctrlprjsotrail生成的文件的名称。
SourceTrail项目位置:从对话框中选择项目文件的位置。
互动方式:
单击“消”或按“ESC”关闭窗口并中止设置过程。
单击添加源组将带您创建一个新的源组。
单击一般以将您带到项目的名称和位置设置。
单击“源组”将允许您编辑其配置并更改其名称。
单击+“源组”列表以创建一个新的源组。
单击“源组”列表以删除当前所选的源组。
单击“源组列表以复制当前选定的“源组”。
单击Creative以关闭此窗口并创建一个新项目。
编辑项目时也使用此窗口。您可以从左列表中选择源组,然后编辑其内容。此外,您可以将某些源组的活动标志设置为false,以便在刷新项目时不会建立索引。
互动方式:
更改源组的名称。
激活/消激活索引的源组。
更改源组安装期间定义的所有设置。
选择源组类型
创建新源组时,可以根据项目语言选择不同的设置方法。查看我们的快速入门指南以获得正确的源组类型的帮助。
互动方式:
选择代码项目中使用的语言。
选择源组类型将确定您输入的所有必需信息。
单击“取消”,或按ESC关闭窗口。
单击“下一步”将您进入下一步。
空C / C ++源组
空C / C ++源组具有以下配置选项:
描述
标准:
选择索引项的语言标准。通常,此处将选择最新的语言标准。
交叉汇编:
检查使用特定目标,然后使用下拉框指定特定的目标平台
。查看Clang编译器文档以获取更多信息的交叉编译。
文件和目录索引:
这些路径定义了SourcEtrail索引的文件和目录。提供一个目录以以递归方式添加所有包含的源文件和头文件。如果项目的源代码位于一个位置,则生成的源文件位于另一个位置,并且需要添加目录。您可以通过$ {env_var}使用环境变量。
排除文件和目录:
这些路径定义了索引中缺少的文件和目录。
小费:
您可以使用*指示除\或其他字符之外的字符通配符/(例如,src / * / test.h匹配src / app / test.h但不匹配src / app / widget / test.hsrc / test.h)
您可以使用**表示通配符(例如,或SRC ** test.h匹配)src / app / test.hsrc / app / widget / test.hsrc / test.h
您可以使用$ {env_var}使用环境变量
源文件扩展名:
为源文件定义有效的扩展名,包括点.cpp。 SourceTrail只会尝试索引与其中一个扩展之一匹配的文件。
包含路径:
包含用于解析索引源文件的路径和标题文件中的#include指令的路径。这些路径通常使用“-i”或'-quit'标志传递给编译器。在整个项目中添加与#include指令相关的所有路径。如果您在项目的根目录中指定所有#include指令,请在此添加此根目录。如果您的项目还包含来自外部库(例如Boost)的文件,则添加这些目录(例如,添加“路径/返回/ boost_home /包含”)。您可以通过$ {env_var}使用环境变量。
全球包括路径:
除了具体的“包括路径”之外,还将在所有项目中使用“全局包括路径”。这些路径通常使用“-iystem”标志传递给编译器。制作
框架搜索路径(仅限麦克斯):
这些路径用于查找框架项目使用的文件。
全球框架搜索路径(仅限麦克斯):
这些框架搜索路径将用于所有项目中。
编译器徽标:拒绝索引期间使用的其他编译器标志,包括白划线(例如,用于-drelease添加#define过程。
预编译头文件:
选择标题文件的路径以生成预翻译的头文件。将生成预编译的头文件作为预提取步骤。如果没有路径,则不会生成预编译的头文件。
预编译标题标志:
定义是否已提供的编译器标志是用于生成预编译的头文件,并为生成预编译的头文件来定义其他符号。
更新日志:
201.1.30(Beta)
发布2021-03-15
Java:修复了Linux上的Java路径检测(#1138)
Java:更新了Java依赖项,以添加对Java 13,14和15(#1152)的支持
C / C ++:由于空指针访问时,固定崩溃
Python:将SourcetrailpythonIndexer更新为1.25.6以解决文件内容存储到数据库时发生的问题(#1159)
图:固定钻石结构时的多级继承边缘(#1142)
UI:如果没有可用的新闻,请隐藏新闻小部件(#1160)
Windows:忽略超过字符限制数量的路径,以免崩溃(问题#1149)(#1151)
Linx:Linux SourceTrail启动脚本(#1134)分析符号链路分析
文件:纠正许多法术错误(#1162)
建:从Qt切换以增强执行步骤的实现(#1145)
构建:使Windows CI和测试Java语言支持(#1156)
构建:在Linux CI上进行Java测试(#1127)
2020.4.35
发布2021-01-06
构建:添加Qt版本的兼容性层(#1118)
C / C ++:更新为LLVM / CLANG 11.0.0(问题#1088)(#1116)
C / C ++:修复代码块项(问题#1109)(#1110)崩溃的情况
图形:为图形添加菜单操作“另存为图像”(问题#426)(#1104)
图形:记住图形重新启动时的缩放级别(问题#801)(#1099)
构建:固定cmake_cxx_compiler_launcher设置到ccache(问题#1081)编译器问题
python:将python索引更新为v1.db25.p5(#1087)
Linux:在复制初始用户数据时清楚地添加U + W权限(#1072)
Linux:修复了运行时中的SourceTrail图标(#1071)
构建:QT 5.12被遗弃的修复(#1003)
Linux:防止单词在传递给Sourcetrail.sh的参数中拆分(#1057)
C / C ++:支持LLVM / CLANG DYLIB而不是单个组件的链接(#1044)
软件特色:
Sourcetrail是:
自由
离线工作
在Windows,MacOS和Linux上运行
支持C,C ++,Java和Python
提供SDK(SourcetraildB)来编写自定义语言扩展
可连接编辑器:
原子,克隆,eclipse,emacs,intellij思想,neovim,pycharm,qtcreator,sublime文本,vim,Visual Studio,Visual Studio代码