你好,欢迎进入江苏优软数字科技有限公司官网!

诚信、勤奋、创新、卓越

友好定价、专业客服支持、正版软件一站式服务提供

13262879759

工作日:9:00-22:00

【IDEA教程】详解 IDEA 使用 Git 同时处理多个功能

发布时间:2023-08-23

浏览次数:0

有时,您需要在不同的任务之间切换并稍后返回。 IDEA 为您提供了多种方法来方便地处理多种不同的功能,而不会丢失您的工作:

保存更改与搁置非常相似。 唯一的区别是补丁生成和应用的形式。 存储由Git生成,可以在IDEA内部或外部使用。 搁置修改的补丁由 IDEA 生成,也通过 IDE 应用。 据了解,隐藏涉及所有未提交的更改,而当您将更改上架时,您可以选择一些局部更改,而不是全部上架。

搁置改装

保留暂时存储您尚未提交的待处理编辑。 例如,如果您需要切换到另一个任务并且想要将更改放在一边以便稍后处理它们,这非常有用。

使用 IDEA,您可以搁置单个文件和整个修订列表。

您无法搁置未版本控制的文件,即尚未添加到版本控制的文件。

一旦搁置,可以根据需要多次应用更改。

搁置改装

1. 在“提交工具”窗口中 Alt+0,右键单击要放入架子的文件或更改列表,然后从上下文菜单中选择“搁置更改”。

intellij idea 重置默认视图

2. 在“搁置修改”对话框中,查看已更改文件的列表。

3. 在阵列中输入要创建的架子的名称,然后单击 按钮。

您还可以静默搁置更改,而不显示“搁置更改”对话框。因此,选择要搁置的文件或修订列表,然后单击工具栏上的安静搁置图标

,或按 Ctrl+Shift+H。 包含要搁置的更改的更改列表的名称将用作搁置名称。

为了防止许多架子具有相同的名称(例如),您可以将文件或更改列表从“至”选项卡拖到工具窗口的“架子”选项卡,稍等片刻直至其变为活动状态,然后立即编辑新的架子名称。

如果您需要将更改复制到 而不重置本地更改,请按 Ctrl+Shift+A 并查找“保存到 ”操作。

取消搁置变更

取消搁置是将延迟的更改从搁置移至挂起更改列表。 未搁置的更改可以从视图中过滤或从搁架中删除。

1. 在“搁置”选项卡中,选择要取消搁置的修订列表或文件。

2. 按 Ctrl+Shift+U 或从所选内容的上下文菜单中选择“取消搁置”。

3. 在该对话框的“名称”数组中,指定要将未搁置的修改恢复到的修改列表。 您可以从列表中选择现有编辑列表,或输入要创建的包含未搁置编辑的新编辑列表的名称。 您可以在数组中输入新修改列表的描述(可选)。 如果您想让新的修改列表处于活动状态,请选择“设置”。 否则,当前活动的修改列表保持活动状态。

4. 如果您希望 IDEA 在新变更列表停用时保留与新变更列表关联的任务上下文,并在变更列表变为活动状态时恢复上下文,请选择“跟踪上下文”选项。

5. 如果要删除要取消搁置的更改,请选择从搁置中删除已成功应用的文件选项。 未搁置的文件将从搁架中删除并添加到另一个更改列表中并标记为已应用。 只有通过单击工具栏上的 或从上下文菜单中选择“清理”来明确删除它们,它们才会被完全删除。

如果您不小心删除了未搁置的文件,可以从“最近删除”节点查看并恢复它们。

6. 单击“确定”。 如果修复程序与当前版本之间存在冲突,请按照解决冲突中的说明进行操作。

您还可以静默取消搁置更改,而不显示“取消搁置更改”对话框。因此,选择要取消搁置的文件或修改列表,然后单击工具栏上的 图标

,或按 Ctrl+Alt+U。 未搁置的文件将被传送到活动的挂起更改列表。

您还可以将文件或编辑列表从“搁置”选项卡拖到“至”选项卡以静默取消搁置。 如果按住 Ctrl 键拖动它,它将被复制到“提交到分支”选项卡,而不是从架子上删除。


专属福利
点击领取:651页Java面试题库

放弃挂起的更改

1. 在书柜视图中,选择包含您不想再保留的编辑的编辑列表。

2. 右键单击​​它并从上下文菜单中选择删除,或按 。

恢复未搁置的更改

IDEA 允许您在必要时重新应用未搁置的更改。

所有未搁置的修改都可以重复使用,直到通过单击工具栏上的图标或从上下文菜单中选择“清理”明确删除它们为止。

1. 确保“显示搁置”工具栏选项已启用。

2. 选择要恢复的文件或架子。

3. 从选定的上下文菜单中,选择“恢复”。

应用外部补丁

您可以导出在 IDEA 内部或外部创建的补丁,并将它们作为搁置的修改应用。

1. 在书架视图中,从上下文菜单中选择。

2. 在打开的对话框中,选择要应用的补丁文件。 选定的补丁在“工具架”选项卡中显示为工具架。

3. 选择新添加的带有补丁的架子,然后从所选上下文菜单中选择“取消搁置修改”。

手动搁置基础修订

将 IDEA 配置为始终在 Git 版本控制下搁置文件的基本修订版可能会很有用。

1. 按 Ctrl+Alt+S 打开 IDE 设置并选择版本控制 | 货架。

2. 选择将文件的基本修订版本搁置到分布式版本控制系统下的选项。 如果启用此选项,文件的基本修订版本将保存到架子中,如果应用架子导致冲突,则将在三向合并期间使用该架子。 如果禁用,IDEA 将在项目历史记录中查找基础版本,这可能需要一段时间; 据报道,冲突架所基于的修订可能会丢失(例如,如果通过变基操作修改了历史记录)。

修改默认架子位置

默认情况下,shelf 目录位于您的项目目录下。 此外,您可能想要修改默认的架子位置。 例如,如果您想在清除工作副本时防止意外删除书柜,或者如果您想将它们存储在单独的存储库中以便在团队成员之间轻松共享书柜,这可能很有用。

1. 按 Ctrl+Alt+S 打开 IDE 设置并选择版本控制 | 货架。

2. 单击“修改架子位置”,然后在打开的对话框中手动指定新位置。

3. 如有必要,选择将架子移动到新位置以将现有架子链接到新目录。

观看此视频教程,了解如何从书架中受益,以便您可以切换到不同的任务,而不会丢失未完成的工作:

保存更改

有时可能需要恢复工作副本以匹配 HEAD 提交,但您不想丢失已经完成的工作。

如果您了解到上游更改可能与您正在做的事情有关,或者您需要进行一些紧急修复intellij idea 重置默认视图,则可能会发生这种情况。

存储涉及记录 HEAD 提交和工作目录当前状态(存储)之间的差异。 对索引的修改也可以隐藏。

取消存储涉及将存储应用到分支。

您可以将存储应用到现有分支或基于它创建新分支。

Stash 可以多次应用到任何分支,只需切换到所需的分支即可。 请记住:

将更改保存到存储

1. 从主菜单中,选择 Git | 未提交的更改 | 保存更改。

2. 在打开的“存储”对话框中,选择适当的 Git 根目录并确保签出正确的分支。

3. 描述您要保存在消息数组中的修改。

4. 要存储本地更改并将索引中暂存的更改引入工作树以进行检测和测试,请选择“保留索引”选项。

5. 单击创建存储。

应用程序存储

1. 从主菜单中,选择 Git | 未提交的更改 | 取消隐藏更改。

2. 选择要应用存储的 Git 根目录,并确保签出正确的分支。

3. 从列表中选择要应用的存储。 如果要检查所选存储中的哪些文件受到影响,请单击“查看”。

4. 要在应用后删除选定的存储,请选择 选项。

5. 要同时应用隐藏索引更改,请选择“恢复索引”选项。

6. 如果您想根据所选存储创建新分支而不是将其应用到当前签出的分支,请

在“作为新分支”数组中键入分支的名称。

要删除保存,请在列表中选择它并单击“删除”。 要删除所有存储,请单击清理。

如果存在冲突,此操作可能会失败。 发生这种情况是因为冲突存储在索引中,并且您无法再应用原始状态的修改。

将更改分组到不同的更改列表中

当您处理多个相关功能时,您可能会发现将更改分组到不同的更改列表中很方便。 与使用特征分支处理多个任务相比intellij idea 重置默认视图,这些方法有其优点和缺点。

优势:

缺点:

所有修改的列表显示在“to”选项卡的“本地”视图中。 所有更改的文件都手动放置在活动更改列表中,即修改更改列表,除非您创建不同的文件并使其处于活动状态。

更改列表显示在本地更改视图中。 最初,只有一个默认修改列表。 它被调用,所有新的修改也被手动放入这个修改列表中。 还有一个文件修改列表,它将新创建的尚未添加到 VCS 的文件进行分组。

intellij idea 重置默认视图

您可以根据需要创建任意数量的更改列表并随时激活其中任何一个。 您可以将任何未提交的修订链接到任何修订列表。

创建新的变更列表

1. 在本地视图中,单击

并选择新建。

2. 在“新建更改列表”对话框中,指定新更改列表的名称,并可以选择添加说明。

设置活动修改列表

在变更列表之间传达变更

1. 在“本地修改”视图中,选择要连接到另一个修改列表的修改。

2. 右键单击​​所选内容或单击

工具栏并选择 +Shift+M。

3. 在打开的对话框中,选择现有修改列表或输入新修改列表的名称。

4. 您可以选择激活目标变更列表并跟踪其上下文(IDEA 将保存与此变更列表关联的上下文,并在激活此变更列表时恢复它)。

您还可以在编辑列表之间拖动文件。

删除变更列表

使用功能分支

Git 中的分支代表独立的开发线,因此,如果您正在开发一个单独的功能,并且希望在准备好共享工作结果并将其集成到功能中之前完成并测试它分支是最好的解决方案。 这样您就可以确保不稳定的代码不会提交到项目的主代码库中,并且在必要时您可以轻松切换到其他任务。

优势:

缺点:

有两种主要方法可以使用功能分支并将更改集成到主代码库中:

使用合并来集成功能分支的更改

合并选项的主要用途是完全可追溯性,因为合并到主存储库中的提交保留其原始哈希值和作者,但属于功能一部分的所有提交都可以组合在一起。

此工作流程适用于向主代码库提交更改涉及拉取请求或分层审批流程的项目,因为现有分支不会以任何方式修改。

这些方法的主要缺点是,每次需要合并更改时都会创建无关的合并提交,这会严重污染项目历史记录并使其不可读。

1. 为您单独的开发线创建一个分支。

2. 在开发过程中提交变更。

3. 将您的分支推送到远程存储库。 这应该用于备份,以便您可以在不同的计算机上协作或工作。

4、当您需要从事与您的职能无关的工作时,请切换到其他部门。

5. 检查并测试您的功能,并进行必要的修复。

6. 当您准备好将工作结果集成到主分支中时(例如),请执行以下操作:

使用功能分支的集成更改

此选项的主要好处是您可以获得清晰的项目历史记录,易于其他人阅读和理解。 您的日志不包含合并操作中不必要的合并提交,并且您将获得易于导航和搜索的线性历史记录。

但是,当决定采用此工作流程时,您应该记住,它会重新绘制项目历史记录,因为它会为原始功能分支中的每个提交创建新的提交,它们将具有不同的哈希值,这会妨碍可追溯性。

1. 为您单独的开发线创建一个分支。

2. 开发过程中经常会提交变更。

3. 将您的分支推送到远程存储库。 这应该用于备份,以便您可以在不同的计算机上协作或工作。

4. 不时地重新调整你的功能分支。 仅当您的功能分支很长时,这才有意义。 这可以帮助:

o 确保您的功能分支不会偏离太远。

o 当您最终将更改集成到主代码库中时,防止解决大量冲突。 当您定期变基时,您可以迭代地解决冲突,但最终不会因长期差异而苦苦挣扎。

o 推送检测分支,因为一旦分支足够分散,分支之间的切换就会变慢。

变基涉及以下步骤:

o 从远程获取更改,或将更改拉入分支。

o 将您的分支重新设置为 .

o 强制将操作结果推送到功能分支。

5. 当您需要执行与您的职能无关的工作时切换到。 当您返回到功能分支时,执行 和 to。

6. 检查并测试您的功能,并进行必要的修复。

7. 该功能完成后执行交互式变基。 这允许您重新排序和压缩提交,以使您的功能分支历史记录看起来干净整洁。

8. 当您准备好将工作结果集成到主分支中时(例如),请执行以下操作:

o支付分行。

o 将您的分支与 . 由于没有分歧,Git 只会将指针转发到功能分支的最新提交,而不是创建新的合并提交(这称为快进合并)。

o 删除功能分支。

o推。

在功能分支名称前加上您的姓名首字母或昵称(如果很短)是有意义的。 这样,您仍然可以使用“分支”菜单中的快速搜索轻松找到所有分支。

程序员技术交流群

扫码添加我的Momo,记得备注:城市、昵称和技术方向,我拉你进群。

最近的技术文章:

intellij idea 重置默认视图

如有侵权请联系删除!

13262879759

微信二维码