Qt:使用版本控制系统

Qt Creator支持的版本控制系统是:
在这里插入图片描述

设置版本控制系统

Qt Creator使用版本控制系统的命令行客户端来访问存储库。要允许访问,请确保可以使用PATH环境变量定位命令行客户端。或者,在Tools > Options > Version Control的中的版本控制系统特定标签的Command字段中指定命令行客户端可执行文件的路径。

Timeout字段中输入用于版本控制操作的超时。

如果访问存储库需要身份验证,请在用户名和密码字段中输入用户凭据。

对于某些版本控制系统,您可以在日志计数字段中指定日志可以包含的最大行数
在这里插入图片描述
设置版本控制系统后,使用命令行检查是否一切正常(例如,使用status命令)。如果没有出现问题,您应该也可以从Qt Creator开始使用系统。

设置常规选项

选择Tools>Options>Version Control>General以指定提交消息的设置:

  • 提交信息折行在限制为将提交邮件的行长限制为指定的字符数。
  • 提交消息检查脚本是可用于在提交之前对提交消息执行检查的脚本或程序。提交消息作为脚本的第一个参数传递。如果有错误,脚本应在标准错误时输出一条消息,并返回非零的退出代码。
  • 用户别名配置文件是一个文本文件,其中列出了邮件地图格式的作者姓名。对于每个作者,您必须指定真实姓名和电子邮件地址,并可以选择别名和第二个电子邮件地址。例如:
Jon Doe <Jon.Doe@company.com> jdoe <jdoe@somemail.com>
Hans Mustermann <Hans.Mustermann@company.com> hm <info@company.com>

在此字段中指定文件后,您可以选择authors作为theNicknamesdialog中的提交消息字段的值。

  • 用户字段配置文件是一个简单的文本文件,由几行组成,这些行指定以作者为值的提交消息字段,例如:
Acked-by:
Initial-patch-by:
Reported-by:
Rubber-stamped-by:
Signed-off-by:
Tested-by:

在此字段中指定文件后,可以在提交更改时将作者添加为提交消息字段的值。如果还指定了用户/别名配置文件,则可以在“昵称”对话框中选择作者。

  • SSH提交命令指定了ssh-askpass命令,在使用SSH时,可以使用该命令(在Linux上)提示用户输入密码。例如,ssh-askpass或x11-ssh-askpass,取决于您使用的ssh-askpass实现。
  • Reset VCS Cache例如,从命令行更改版本控制系统配置后,会将版本控制系统配置重置为Qt Creator已知的状态。
    在这里插入图片描述

为新项目创建VCS存储库

Qt Creator允许您为支持本地存储库创建的版本控制系统创建存储库,例如Git,Mercurial或Bazaar。通过选择File > New File or Project来创建新项目时,可以在最后的向导页面上选择一个版本控制系统。

您还可以选择Tools,然后在版本控制系统的子菜单中选择创建存储库”

要导入受版本控制的项目,请从“版本控制”中选择** File > New File or Project > Project from Version Control**,然后选择要使用的版本控制系统。按照向导的说明导入项目。

使用常用功能

Tools菜单包含每个受支持的版本控制系统的子菜单。本节介绍了使用所有受支持的版本控制系统可用的功能。有关特定版本控制系统可用的附加功能和选项的更多信息,请参见:

添加文件

创建新文件或新项目时,向导将显示一个页面,询问是否应将文件添加到版本控制系统中。当父目录或项目已经在版本控制下并且系统支持添加文件的概念(例如Perforce和Subversion)时,会发生这种情况。或者,您可以稍后使用版本控制工具菜单添加文件。

查看差异输出

所有的版本控制系统提供的菜单选项的diff当前文件或项目:将其与存储在库中的最新版本进行比较,并显示差异。在Qt Creator中,差异显示在只读编辑器中。如果可以访问该文件,则可以双击选定的差异块,然后Qt Creator将打开一个显示该文件的编辑器,滚动至相关行。
在这里插入图片描述
对于Git、Mercurial和Subversion,默认情况下,diff在diff编辑器中并排显示。要使用inline diff视图,请在工具栏中选择**Switch To Text diff Editor(1)**选项。在内联diff视图中,您可以使用上下文菜单命令来应用、恢复、分段和取消分段块或所选行,以及将块发送到代码粘贴服务。

查看版本历史记录和更改详细信息

通过选择Log或Filelog显示文件的版本控制历史记录。通常,日志输出包含日期,提交消息以及更改或修订标识符。

注释文件

注释视图通过选择AnnotateBlame来获得。选择Annotate或Blame将显示文件的行,行前加上它们所源自的变更标识符。单击变更标识符会显示变更的详细描述。

要显示以前版本的注释,请右键单击行首的版本标识符,并选择上下文菜单底部显示的其中一个修订。这允许您浏览文件的历史记录,并获得它的以前版本。它也适用于使用SHA-1的Git和Mercurial。

当右键单击单个文件的file log视图中的版本标识符时,也可以使用相同的上下文菜单。

提交变更

完成更改后,通过选择Commit或Submit将它们提交到版本控制系统。Qt Creator将显示一个包含文本编辑器的提交页面,您可以在其中输入提交消息以及要包含的已修改文件的可检查列表。

还原更改

所有受支持的版本控制系统都支持将项目还原到已知状态。此功能通常称为还原。

放弃的更改取决于版本控制系统。

版本控制系统可以将Revert菜单选项替换为其他选项。

查看状态

您可以选择Status以查看项目或资源库的状态。

更新工作树

您可以选择Update以使用分支中的最新更改来更新工作树。一些版本控制系统允许您在更新当前项目和更新所有项目之间进行选择。

删除文件

您可以选择Delete从存储库中删除过时的文件。