如何在Android Studio中将Git历史提交转为master分支新版本并处理游离HEAD
在Android Studio中基于历史版本创建新提交的操作指南
一、解决Detached HEAD状态,实现目标提交历史
你当前检出V1.4后处于「Detached HEAD」游离状态,无法直接将修改提交到master分支,按以下步骤操作即可得到你想要的提交历史:
- 基于当前游离的V1.4创建临时分支:打开顶部菜单「Git」→「New Branch」,输入分支名(比如
temp-v1.4),确认基于当前HEAD创建,脱离游离状态。 - 切回master分支:点击底部状态栏的分支名称,或通过「Git」→「Branches」选中
master,点击「Checkout」,回到V2.2的最新状态。 - 把V1.4的内容带到master上修改:
- 方法1(保留合并记录):打开「Git」→「Merge Changes」,选择刚才创建的
temp-v1.4分支,合并后解决冲突,调整内容到你想要的V3.0状态。 - 方法2(仅应用V1.4的改动):打开「Git」→「Show History」,找到V1.4的提交记录,右键选择「Cherry-Pick」,将该提交的改动应用到master,解决冲突后再调整内容。
- 方法1(保留合并记录):打开「Git」→「Merge Changes」,选择刚才创建的
- 提交V3.0:修改完成后,打开「Git」→「Commit」,输入提交信息「V3.0」,提交后推送到远程,最终提交历史就会是V3.0在V2.2之上的结构。
二、关于提交选项的疑问
你提到的带后缀「.」的提交操作,对应Git原生命令git commit -a(自动提交所有已追踪的修改文件,无需手动暂存),在Android Studio中对应的是提交窗口里勾选「Commit All Files」(或点击提交按钮旁的下拉箭头选择「Commit All」)。
而「Reset Current Branch to Here...」对应的是git reset命令,作用是重置当前分支到指定提交,和带后缀「.」的提交操作完全无关,不要混淆。
内容的提问来源于stack exchange,提问作者Hong
相关产品推荐
相关产品推荐

