开源个小工具simple-repo

背景

了解android系统的都应该熟悉repo这个工具,google为了方便管理数百个git仓库,开发了repo这个批量管理工具。不过google repo project配置比较麻烦,而通过gitbucket搭建git server则比较傻瓜,所以此处开发了simple-repo这么一个小工具结合gitbucket,实现类google repo的管理目的。

simple-repo介绍:

https://github.com/imagec/simple-repo

  • Why write another copy of repo?
    Sometimes repo project is hard to set up for someone or small company.
    But they can easily set up git server by Gitbucket or Bitbucket.
    If they want to split their project into multi repositories, a tool like repo is required.
  • How to use?
    1)Add the repositories into the repo_manifest list by manual.
    2)Add the prefix of repository url into repo_url_dic, all give it a good name.
    3)Run ./repo init “your name”
    4)The other commands are look like “repo” of Google
    5)…
  • Test?
    I have add two test repositories to let simple repo to manage them

后记

其实开发这个小工具主要有几点原因:

  • google官方的repo project没有搭建成功,设置各种权限很麻烦放弃了。
  • 通过gitbucket或者在线的bitbucket很容易搭建git server,前期我的仓库都放在这个上面。
  • 我就是想练下python,这个工具其实是个副产品,虽然这个代码写的一点不pythonic。

这个工具只在我上家公司使用过,当时用来维护自己的一个工程,该工程有10几个仓库,托管在bitbucket和内部搭建的gitbucket上。唯一感觉有点意思的是,当时和阿里云有个合作,阿里采用标准的repo维护一个项目,我们down下来后,想自己做个内部仓库,在老板尝试搭建标准的repo project无果后,说要不用你写的repo试下能不能管理,(其实我是不情愿的,因为之前全公司就我一个人在推广git,其他人都用svn,对git嗤之以鼻,一点不想转变,更不要说去了解repo了,只有和阿里合作后,被逼无奈用的git,repo)我尝试着添加了一个配置文件到simple-repo,实现了原来用标准repo管理的项目的管理,而且基本上没有修改一行simple-repo的代码,这种感觉还是蛮爽的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/450208.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配合OAuth2进行单设备登录拦截

2019独角兽企业重金招聘Python工程师标准>>> 要进行单设备登录,在其他地点登录后,本地的其他操作会被拦截返回登录界面。 原理就在于要在登录时在redis中存储Session,进行操作时要进行Session的比对。 具体实现,假设我们的OAuth 2…

朱大鸣:中国金融危机到底有多严重

我们到底该不该救助金融机构,中国钞票到底有没有超发,对于这个问题,央行行长周小川日前撰文全面为之辩护:对于第一个问题,他的观点是金融业出现了问题就必须救,否则意味着集体的失灵甚至死亡;中…

C++知识点(六)数组、指针与字符串导学

1.数组 地址连续存放初始化:列出全部初始值后,第1维下标个数可以省略不做初始化,局部变量中为垃圾数据,static变量为0只对一部分进行初始化,其余数值初始化为02.动态内存分配: new delete 3.动态创建数组 n…

Android应用开发—知识点汇总

获取Fragment的context: getActivity().getApplicationContext()或者getActivity()You can use getActivity(), which returns the activity associated with a fragment.The activity is a context (since Activity extends Context).设置TextView的颜色setTextCol…

条件渲染vue

v-if:只渲染一次的情况下,性能更好v-show:频繁切换性能更好 vue虚拟DOM技术 浏览器:渲染引擎(慢)JS引擎(快) 用1个JS对象来充当DOM对象,因为JS对象性能比较快,所以用虚拟DOM对象进行…

钱线观察:货币基金T+0驾到 活期存款将死?

导语:即使没有任何投资风险,通胀也在侵蚀居民的财富,现金是不安全的。最近出现的一项业务,货币基金"T0"赎回,意味着货币基金可以像活期存款一样即时取现,而其收益率普遍高于活期存款。因此有人认…

git stash和git stash pop

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 git stash 可用来暂存当前正在进行的工作, 比如想pull 最新代码, 又不想加新commit, 或者另外一种情…

CentOS 7.0 上安装和配置 VNC 服务器

作为一个系统管理员,大多数时间是通过网络管理服务器的。在管理服务器的过程中很少会用到图形界面,多数情况下我们只是用 SSH 来完成我们的管理任务。在这篇文章里,我们将配置 VNC 来提供一个连接我们 CentOS 7 服务器的方法。VNC 允许我们开…

Android应用开发—TextView的动态创建

动态创建TextView的两种方式&#xff1a; 下面介绍两种创建方式&#xff1a; 在drawable里面创建共同依赖的background.xml文件&#xff0c;里面设置shape来设置文本框的一些特殊效果&#xff1a; eg&#xff1a; <?xml version"1.0" encoding"utf-8"…

Mongo DB 简单搭建和部署

1.先下载源代码包 官网下载地址&#xff1a;http://www.mongodb.org/downloads 2.解包tar xf mongodb-linux-x86_64-rhel62-3.2.7.tgz 3.把包移动到 /usr/local/mongodb mv mongodb-linux-x86_64-rhel62-3.2.7/ /usr/local/mongodb 指定同一时间最多可开启的文件数&#xff08…

运算符优先级 必熟记,放到心里

优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 () 圆括号 &#xff08;表达式&#xff09;/函数名(形参表) . 成员选择&#xff08;对象&#xff09; 对象.成员名 -> 成员选择&#xff08;指针&#xff0…

可持久化平衡树(FHQ Treap)

两个最基本的操作 merge合并 split分割 merge 把两棵treap合并成一棵treap&#xff0c;要满足T1最大值要比T2最小值小&#xff0c;比较将随机数值key值更大的作为合并后的根 假设T1作为根节点作为新子树的根&#xff0c;左子树不变&#xff0c;右子树对T1原来的右子树与T2再递归…

Git 分支管理-git stash 和git stash pop

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 合并分支&#xff0c;冲突是难免的&#xff0c;在实际协作开发中我们遇到的情况错综复杂&#xff0c;今天就讲两个比较重要的命令使用gi…

useState语法讲解

useState语法讲解 语法定义 const [state, dispatch] useState(initData)state&#xff1a;定义的数据源&#xff0c;可视作一个函数组件内部的变量&#xff0c;但只在首次渲染被创造。dispatch&#xff1a;改变state的函数&#xff0c;推动函数渲染的渲染函数。dispatch有两…

NSOperation的进阶使用和简单探讨

本文将会从多个方面探讨NSOperation类和NSOperationQueue类的相关内容 一、简介 NSOperation类是iOS2.0推出的&#xff0c;通过NSThread实现的,但是效率一般。 从OS X10.6和iOS4推出GCD时&#xff0c;又重写了NSOperation和NSOperationQueue&#xff0c;NSOperation和NSOperati…

Android应用开发—LayoutParams的用法

Android应用开发—TextView的动态创建 这篇文章讲到了“TextView控件布局位置的控制”&#xff0c;主要依赖于RelativeLayout.LayoutParams的使用&#xff0c;本文简单介绍下LayoutParams的用法 注&#xff1a;本文大部分内容参考android,利用layoutParams代码动态布局空间位置…

廖雪峰Java1-2程序基础-7布尔运算符

布尔运算符 关系运算符&#xff1a;>&#xff0c; >&#xff0c; <&#xff0c; <&#xff0c; &#xff0c;!与运算 &&或运算 |非运算 &#xff01;int n 5;boolean t n > 0;//trueboolean f n < 0;//falseboolean isFive n 5;//trueboolean i…

第二十一届国际C语言混乱代码大赛结果公布

摘要&#xff1a;国际C语言混乱代码大赛&#xff08;IOCCC, The International Obfuscated C Code Contest&#xff09;是一项著名的国际编程赛事&#xff0c;从1984年开始到2006年&#xff0c;每年举办一次。2006年后中止了多年&#xff0c;2011年又开始恢复。比赛的目的是写出…

QuartZ Cron表达式

CronTrigger 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 CronTriggers往往比SimpleTrigger更有用&#xff0c;如果您需要基于日历的概念&#xff0c;而非SimpleTrigger完全指定的时间…