单位网站服务的建设及维护,软件外包公司创业,建网站报价明细表,专业网站建设市场Git、Gerrit、Repo三者的概念及使用
三者各自作用#xff1a;
git#xff1a;版本管理库#xff0c;在git库中没有中心服务器的概念#xff0c;真正的分布式。 repo#xff1a;repo就是多个git库的管理工具。如果是多个git库同时管理#xff0c;可以使用repo。当然使用…Git、Gerrit、Repo三者的概念及使用
三者各自作用
git版本管理库在git库中没有中心服务器的概念真正的分布式。 reporepo就是多个git库的管理工具。如果是多个git库同时管理可以使用repo。当然使用gerrit就必须用repo。repo是Google开发的用于管理Android版本库的一个工具repo是使用Python对git进行了一定的封装并不是用于取代git它简化了对多个Git版本库的管理。用repo管理的版本库都需要使用git命令来进行操作。 gerrit提交审核代码图形化的界面简单的操作
使用三者管理代码流程:
repo init xxx初始化repo sync xxx同步要改动的项目在该项目下面repo start xxx新建一个本地分支做好改动以后git commit本地提交改动repo upload xxx将改动上传等别人通过gerrit reviewreview如果有需要改动的地方那本地改好后git commit --amend来保存新的修改repo upload 将新的改动上传重复5-7步直到review通过然后merge改动完毕
参考链接https://blog.csdn.net/sk983671939/article/details/113941180
在拉代码时目录下的compile_detail.info中广泛运用了repo命令来下载各个组件的版本
Repo 常用命令
manifest源一般直接使用清华或中科大的镜像源 repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest 是清华提供的镜像源 repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest 是中国科学技术大学的镜像源 repo init 与 repo sync 区别
repo init更新本地的repo repo sync 下载代码到本地。
repo init to bring down the latest version of Repo with all its most recent bug fixes.
repo sync这一步才是真正的从服务器把源码下拉的过程repo相当与是执行了多个git期间有一个git出问题比如网络卡什么的就中断然后就是重复repo sync
关于repo的基本用法这里有 http://source.android.com/source/using-repo.html 举个栗子 repo sync -fcq -j4 --no-tags --prune --no-repo-verify 这个命令是用于同步 Android 代码库的。它的具体含义如下 repo sync执行代码库同步操作。 -f强制同步即使本地的修改会被覆盖。 -c只限于当前分支不同步所有分支。 -q以静默模式执行只显示关键信息。 -j4使用 4 个线程进行同步操作。这个数字可以根据你的电脑处理器核心数进行调整。 –no-tags不同步标签信息。 –prune删除本地不存在的远程分支。 –no-repo-verify跳过验证代码库。 总之这个命令的目的是将你的 Android 代码库与远程仓库保持同步。