codecamp

Subversion查看和处理更改列表

Subversion查看和快速处理更改列表

如果您在服务器上和本地工作副本中使用 Subversion 1.5 或更高版本,则可以利用扩展的"合并信息(Merge Info)"功能,这是通过"控制工具"窗口的"合并信息(Merge Info)"窗格("存储库(Repository)" 选项卡)实现的。

通过此功能,您可以定义一组要显示的更改列表,而不是在某个时间段内浏览所有更改列表。这是通过在存储库(源和目标)中指定一对分支来完成的,因此IntelliJ IDEA仅显示已经被集成到目标分支中的源分支的更改列表。

此外,您可以指定各种过滤选项,以最大限度地减少无关的更改列表的数量。

最后,集成和管理集成状态也可直接从“合并信息(Merge Info)”窗格中获得。

注意:在启用扩展合并信息功能之前,请确保您使用的是SVN Server 1.5或更高版本。

扩展浏览功能包括:

  • 定义要显示的一组更改列表
  • 过滤掉多余的更改列表
  • 从版本控制工具窗口集成文件和更改列表
  • 查看和管理集成状态

如果您使用的是SVN 1.4或更低版本,要启用“合并信息(Merge Info)”功能,则需要先更改本地工作副本的格式。

Subversion定义要显示的更改列表集

使用扩展合并信息的功能,您可以将在更改列表窗格中显示的更改列表集限制为从一个特定分支集成到另一组的更改列表。这些分支分别被称为“源”和“目标”。

要定义要显示的分支集,请执行以下操作:

  1. 打开“版本控制工具”窗口并切换到“Repository”选项卡。
  2. 要打开“合并信息(Merge Info)”窗格,请单击工具栏上的“高亮显示集成(Highlight Integrated)”按钮
  3. 在“From”字段中,指定源分支的URL地址。
  4. 在“To”字段中,指定目标分支的路径。如有必要,请使用“浏览(Browse)”按钮 打开“选择分支(Select Branch)”对话框。
  5. 指定要应用基于选定变更列表创建的补丁的本地工作副本的路径。如有必要,请使用“浏览(Browse)”按钮 打开“配置工作副本路径(Configure Working Copy Paths)”对话框。

Subversion过滤多余的更改列表

只有在突出显示集成状态时才可以过滤集成/未集成的更改列表。 

否则, 将禁用"过滤器集成"按钮 和“过滤器未集成”按钮 。要启用集成状态高亮显示,请单击工具栏上的“高亮显示集成(Highlight Integrated)”按钮

通过扩展的“合并信息(Merge Info)”功能,可以通过应用以下过滤器来限制“更改列表”窗格中显示的更改列表的数量:

  • 要仅显示尚未集成到工作副本中的更改列表,请单击工具栏上的“过滤出集成”按钮
  • 要仅显示已集成到工作副本中的更改列表,请单击工具栏上的“过滤未集成”按钮
  • 要隐藏在另一个VCS中管理的更改列表或位于另一个根目录下的更改列表,请单击工具栏上的“过滤掉其他”按钮
  • 要仅显示特定用户提交的更改列表,请在“筛选依据( Filter by)”下拉列表中选择“用户(User)” 。然后选择所需的用户名。
  • 要仅显示应用于特定模块或文件夹的更改列表,请在“筛选依据( Filter by)”下拉列表中选择“结构(Structure)” 。然后选择所需的位置。
  • 要按提交用户或提交日期对用户进行更改列表分组,请在“分组依据(Group by)” 下拉列表中选择相应的选项。

从版本控制工具窗口集成文件和更改列表

您可以直接从版本控制工具窗口将更改列表或文件集成到本地工作副本中。

请执行下列操作实现:

  1. 在“更改列表”窗格中,选择所需的更改列表。如果需要,您可以一次选择多个更改列表。
  2. 执行以下操作之一:
    • 要集成整个更改列表,请单击“合并信息(Merge Info)”窗格工具栏上的“集成到分支(Integrate to Branch)”按钮
    • 要集成选定更改列表中的特定文件,请在“更改的文件(Changed Files)”窗格中选择该文件,然后单击“合并信息(Merge Info)”窗格工具栏上的“集成到分支((Integrate to Branch))”按钮
    • 要将所选更改列表的最后一个集成还原到工作副本中,请单击工具栏上的“撤消集成到分支(Undo Integrate to Branch)”按钮

查看和管理集成状态

通过扩展合并信息功能,您可以查看和更新​​更改列表的集成状态。

Subversion存储关于更改列表是否已被集成到本地工作副本的信息。根据这些数据,IntelliJ IDEA通过在其旁边显示下列图标之一来通知您特定更改列表的集成状态:

  • :集成
  • :没有集成
  • :集成状态未知
  • :共同的历史

要显示集成状态,请单击 “合并信息(Merge Info)”窗格工具栏上的“高亮显示集成(Highlight Integrated)”按钮

您可以更改更改列表的集成状态,而无需将其实际集成到工作副本或恢复以前的集成。这只会影响管理数据。

要切换更改列表的集成状态,请执行以下操作之一:

  • 要将更改列表标记为“集成(Integrated)”,请选择该列表并单击“合并信息(Merge Info)”窗格工具栏上的“标记为已合并(Mark As Merged)”按钮。 
  • 要将更改列表标记为“未集成(Not integrated)”,请将其选中,然后单击“合并信息(Merge Info)”窗格工具栏上的“标记为未合并(Mark As Not Merged)”按钮
Subversion共享目录
通过Subversion查看合并源
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }