如何在Git同一仓库双分支保留不同代码(Git+Android Studio)
解决方案:基于Git合并Codecanyon源码新版本并保留自定义修改
一、Git分支合并实操步骤(匹配你的需求)
1. 初始化仓库并导入你的v2定制版本
- 打开你修改完成的v2项目文件夹,执行:
这一步会把你的定制代码存入git init git add . git commit -m "提交:我的定制版v2(含换肤、包名修改及代码调整)"main分支。
2. 导入官方v3版本到dev分支
- 创建并切换到
dev分支:git checkout -b dev - 删除当前
dev分支下的所有文件(确保和官方v3完全一致),把Codecanyon下载的官方v3源码全部复制到这个文件夹里 - 提交官方v3版本:
git add . git commit -m "提交:官方原版v3"
3. 合并官方v3变更到main分支(保留你的定制内容)
- 切回
main分支:git checkout main - 执行合并(不自动提交,方便手动处理):
git merge dev --no-commit - 处理冲突与选择保留内容:
- 对于你修改过的文件(比如包名配置、换肤资源、自定义代码),执行
git checkout --ours <文件名>直接保留你的版本 - 对于官方v3新增的文件/功能代码,执行
git checkout --theirs <文件名>直接采用官方版本 - 若遇到部分代码重叠的冲突,打开文件手动删除冲突标记(
<<<<<<<、=======、>>>>>>>),保留你的定制逻辑+新增的官方代码
- 对于你修改过的文件(比如包名配置、换肤资源、自定义代码),执行
- 确认所有内容无误后,提交合并结果:
git add . git commit -m "合并:官方v3新增功能,保留我的定制修改"
二、Codecanyon开发者常用的其他升级方案
如果Git操作还是觉得复杂,这些方法也很实用:
- 文件对比工具手动迁移:用Android Studio自带的文件对比(右键文件→Compare With)或第三方工具,对比官方v3和你的定制v2,只把官方新增/修改的代码块复制到你的项目中
- 补丁文件复用修改:第一次定制后,用
git diff > my-custom.patch生成补丁文件;新版本出来后,把补丁应用到官方v3上(git apply my-custom.patch),再调整少量冲突即可 - 定制修改清单:把所有做过的修改(比如包名修改位置、换肤资源路径、代码调整的函数)整理成文档,每次升级按清单逐一重做,适合修改点不多的小项目
内容的提问来源于stack exchange,提问作者iStream
相关产品推荐
相关产品推荐

