reposync帮助您管理许多git存储库。

reposync的Python项目详细描述


重新同步

reposync帮助您管理许多git存储库。通过在yaml文件中声明存储库,reposync可以以适当的方式对存储库应用各种git命令(目前仅限于clonepull)。

安装

$ pip install reposync

用法

repositories.yaml中声明存储库,如下所示:

Projects:
  Past:
    alpha: github.com/yourusername/alpha
  Current:
    beta: github.com/yourusername/beta
    omega: github.com/yourusername/omega

Dotfiles: github.com/yourusername/dotfiles

Others:
  TensorFlow: github.com/tensorflow/tensorflow
  Helm: [go, github.com/helm/helm]

然后运行$ reposync clone来克隆存储库,得到如下目录结构:

.
├── Projects
│   ├── Past
│   │   └── alpha
│   └── Current
│       └── beta
│       └── omega
├── Dotfiles
└── Others
    ├── TensorFlow
    └── Helm

要更新这些存储库,请使用$ reposync pull

可以使用--file <filename>.yaml指定yaml文件。有关完整选项,请参见$ reposync -- --help

go支持

在go中,最好将存储库放在gopath。reposync通过将go存储库克隆到go path中的正确路径(模拟go get)来支持这一点,然后在指定的路径上创建指向存储库的符号链接。

要指定go存储库,需要放置一个特殊列表。在上面的示例中,Helm是go存储库,其值为[go, github.com/helm/helm]。第一个元素表示go repository,第二个元素表示导入路径,最后一个元素表示二进制位置(可选,默认为导入路径)。

在内部,reposync将首先运行git clone https://github.com/helm/helm $GOPATH/src/github.com/helm/helm,然后运行ln -s $GOPATH/src/github.com/helm/helm Others/Helm

ssh支持

reposync支持使用ssh克隆存储库,只需传递--method=ssh(默认为--method=https)。此参数将使reposync自动使用与ssh url相对应的存储库url(可在repositories.yaml中找到)。

并发支持

reposync通过传递--concurrent,支持通过多线程并发执行命令。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Android应用程序中处理新活动时出现java NullPointerException   从PSV文件读取Java   在JavaSwing中将方法从一个类传递到另一个类   带有MongoDB错误的java Vertx ClassNotFoundException:com。mongodb。联系溪流工厂   在java中替换2D数组中的数字?   java Avro方案空布尔和双整数布尔的写并集   java导入组织。neo4j无法解决?   从另一个获取变量。使用反射的java文件   Java:以格式化字符串的形式返回具有非常不同的条目长度的2D数组   java客户端应用程序正在从IBMMQ接收不同格式的消息体   java在我的主循环中的步骤有问题   java如何正确安装来自sslforfree的证书。tomcat服务器上的com   java RecyclerView变更单永久   java如何获得屏幕的精确中间位置,即使调整了大小