Git管理多个远端仓库的方法

本文详述如何在一个Git项目中管理多个远端仓库,包括工程配置以适应不同平台,以及如何设置和同步不同远端仓库的提交。通过实例展示了在Android项目中配置平台特定资源,以及使用git进行分支切换和cherry-pick操作来同步代码。
部署运行你感兴趣的模型镜像

作者: yongquan.xu


本文针对目前项目同时维护2个远端仓库的情况,介绍了用一个工作项目,同时提交的方法。

1、工程配置

由于S2和X588的系统主题不一样,本节介绍通过工程配置和Android版本继承的方法来动态引用系统主题。使得在Windows下编译时,忽略项目特有的style,而在源码编译时自动引用。避免提交时因为平台的差异,提交错误的style导致编译失败。

在项目默认的values目录下,定义style:

<style name="Tpv.DialogBase" parent="Theme.AppCompat.Light.Dialog"/>

在项目的根目录下(Android studio在module的src目录下)创建x588和s2目录,并创建res/values-23/目录,并在values.xml中继承style:

X588/res/values-23/values.xml:

<style name="Tpv.DialogBase"parent="com.tpv:Theme.Tpv.Light.Dialog.Alert"/>

 

S2/res/values-23/values:xml:

<stylename="Tpv.DialogBase"parent="android:Theme.Tpv.Light.Dialog.Alert"/>

由于style是在Eclipse项目外定义,因此在Eclipse编译时不会被加入。在源码编译时,需要在Android.mk添加资源目录。这里要注意的是,开关不要使用$MTK_PLATFORM,因为2个分支的值都是MT6755:

ifeq ($(TARGET_DEVICE), tpv6750_66_m)

LOCAL_RESOURCE_DIR+= vendor/tpv/apps/Clock/deskClock/src/x588/res

else

LOCAL_RESOURCE_DIR+= vendor/tpv/apps/Clock/deskClock/src/s2/res

Endif

    Android studio配置

    配置完成以后,在Android studio的项目视图中,需要选择Project,才能看到平台专属的资源。可以通过gradle配置,把资源引入到module里。Eclipse开发环境请忽略本节。

    编辑module的build.gradle,添加以下内容:

productFlavors {
    general {}
    x588 {}
    s2 {}
}

完成后,在Build Variants下会出现以下菜单,选择相应的项,可以把平台的资源引入到项目中(当然,正常是不能通过编译的):

 


2、git提交

上文介绍了通过编译脚本,在一个工程里配置不同的平台,简化git提交动作。本节介绍在一个git仓库中配置多个远程仓库并实现同时提交。这里我们默认在不同的远端仓库中,代码基线是一致的。

 

Clone git本地仓库:

git clonessh://yongquan.xu@twtps524.tpvaoc.com:29418/MT6755R3/alps/

vendor/tpv/apps/Photo.git -bFREELY_UI_2.0

添加X588的仓库:

git remote addx588 ssh://yongquan.xu@twtps524.tpvaoc.com:29418/MT6750/

alps/vendor/tpv/apps/Clock.git

       fetch X588分支到本地:git fetch x588

 

       在FREELY_UI_2.0分支下,修改代码并提交,记下提交的change id,切换到X588_M0_V1分支:

       git checkout X588_M0_V1

 

       把Freely UI 2.0的代码合并过来:git cherry-pick<change-id>

       提并X588_M0_V1代码:

       git push ……


您可能感兴趣的与本文相关的镜像

ComfyUI

ComfyUI

AI应用
ComfyUI

ComfyUI是一款易于上手的工作流设计工具,具有以下特点:基于工作流节点设计,可视化工作流搭建,快速切换工作流,对显存占用小,速度快,支持多种插件,如ADetailer、Controlnet和AnimateDIFF等

### 如何在 Git 中添加远端仓库链接 要在 Git 中添加远端仓库链接,可以使用 `git remote add` 命令来完成此操作。以下是关于该过程的具体说明: #### 添加远程仓库的核心命令 通过以下命令可以在本地项目中添加一个远程仓库链接: ```bash $ git remote add <远程仓库的别名> <远程仓库的地址> ``` 例如,如果要将名为 `origin` 的远程仓库指向 GitHub 上的一个特定仓库,则执行如下命令[^1]: ```bash $ git remote add origin git@github.com:<用户名>/<仓库名>.git ``` #### 验证远程仓库是否成功添加 为了确认远程仓库已正确配置,可运行以下命令以列出当前项目的远程仓库信息: ```bash $ git remote -v ``` 这会显示所有已定义的远程仓库及其对应的 URL 地址。 #### 修改默认分支名称(如有必要) 有时本地分支名称可能与远程分支不匹配,默认情况下可能会遇到推送失败的情况。因此,在推送之前建议检查并调整分支名称的一致性。例如,GitHub 默认分支通常命名为 `main` 而不是传统的 `master`。此时可通过以下命令更改本地分支名称[^4]: ```bash $ git branch -m master main ``` #### 推送代码至远程仓库 当远程仓库设置完成后,需按照一定顺序提交代码到服务器上。具体流程包括以下几个部分: 1. 将修改后的文件暂存区加入索引阶段: ```bash $ git add . ``` 2. 提交这些改动到版本库,并附带描述性的消息: ```bash $ git commit -m "Initial commit" ``` 3. 如果存在冲突或者需要同步最新状态,可以从远程拉取数据后再重新应用自己的变更: ```bash $ git pull --rebase origin main ``` 4. 最终把更新过的记录上传给指定的目标路径: ```bash $ git push -u origin main ``` 以上步骤涵盖了从初始化到最后部署整个过程中涉及到的关键环节。 #### 注意事项 - 在首次尝试推送到新的远程仓库前,请务必验证所使用的邮箱账号已经过身份认证并与目标平台上的个人资料相吻合[^2]。 - 当多个开发者共同协作同一个项目时,应定期获取最新的公共基线副本以免产生不必要的分歧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值