一个自动使用--reference来节省时间和空间的git clone包装器。
项目描述
一个自动使用–reference来节省磁盘空间和下载时间的git clone包装器。
安装
要以优雅的方式安装git-autoshare,我们推荐使用pipx。
安装pipx后,只需运行
$ pipx install git-autoshare
要随时升级git-autoshare
$ pipx upgrade git-autoshare
如果您想使git autoshare-clone在git clone的位置透明调用,创建以下bash脚本,命名为git,并将其放置在PATH中,在/usr/bin/git之前
#!/bin/bash if [ "$1" == "clone" ] then shift /usr/bin/git autoshare-clone "$@" else /usr/bin/git "$@" fi
使用方法
配置文件
要配置它,请在用户配置目录中创建一个名为 git-autoshare/repos.yml 的文件(在 Linux 上通常是 ~/.config)。此文件必须具有以下结构
host: repo: orgs: - organization - ... private: (True|False) ...: ...:
它列出了所有要共享 git 对象的 git 主机、存储库和组织。以下是一个示例
github.com: odoo: orgs: - odoo - OCA enterprise: orgs: - odoo - acsone private: True mis-builder: # shortcut to provides organizations - OCA - acsone
请注意使用 private 选项,用于强制使用 ssh 协议进行获取。
也可以使用 * 作为存储库名称的通配符,以便自动共享某些组织的所有存储库
github.com: "*": orgs: - odoo - OCA - acsone private: True
环境变量
缓存目录命名为 git-autoshare,其中 appdirs.user_cache_dir 是(通常是 ~/.cache/git-autoshare/)。此位置可以通过 GIT_AUTOSHARE_CACHE_DIR 环境变量进行配置。
默认配置文件名为 repos.yml,其中 appdirs.user_config_dir 是(通常是 ~/.config/git-autoshare/)。此位置可以通过 GIT_AUTOSHARE_CONFIG_DIR 环境变量进行配置。
默认情况下,git-autoshare 将 git 作为 /usr/bin/git 调用。这可以通过 GIT_AUTOSHARE_GIT_BIN 环境变量进行配置。
在启动测试时使用环境变量(以避免配置检索问题):GIT_AUTOSHARE_MODE。它只接受一个值:'test'。
致谢
作者
Stéphane Bidoul (ACSONE)
贡献者
Simone Orsi (Camptocamp)
Mykhailo Panarin
Stéphane Mangin
维护者
此项目由 ACSONE SA/NV 维护。
变更
1.0.0b6 (2022-02-26)
修复了 Git_AUTOSHARE_MODE 环境变量成为必要的回归问题
1.0.0b5 (2022-01-26)
在 git-autoshare-prefetch 中支持组织通配符
仅支持 python >= 3.6(尚未进行代码更改,仅停止测试)
1.0.0b4 (2019-07-14)
支持 ssh:// url,删除对 giturlparse 的依赖
1.0.0b3 (2019-07-13)
在克隆之前始终预取缓存,以确保定期更新缓存
1.0.0b2 (2019-03-17)
添加子模块添加命令
使用 safe_load 解析配置
允许在配置中使用通配符
内部重构
1.0.0b1 (2018-01-07)
支持私有存储库
改进了预取中的远程处理
使用 –prun 预取
1.0.0a2 (2017-10-10)
第一个打包版本
项目详情
git-autoshare-1.0.0b6.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d1dff471af5c8f30676362aa84b6d70c0aedbcc6b57a02e2c84dd4d5062bed7a |
|
MD5 | 36e571a57fddca25223f3d9a16550a93 |
|
BLAKE2b-256 | 5753237567eae8dfb8679e13dcfe62771e4ef82407e0251cc21e5aed6d0f7e5f |
git-autoshare-1.0.0b6-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f44cd4f0a9457b5ac67f995274babae6485b46893a2f98e39935e831603bbacc |
|
MD5 | 1fcd4ac51af48f75f372d61b986a216a |
|
BLAKE2b-256 | 61c2f4467b712e0249bf9b45dd6100b7497d688ddb609605dccea92f3a1c11df |