跳转到主要内容

获取git项目的集合

项目描述

获取git项目的集合

Version on pypi Tested with Github Actions Test code codecov Python versions tested

概述

使用mgit,您可以一次性拉取/获取多个项目,还可以自动清理悬空分支(来自过去的拉取请求)。

如果可能,将提供彩色输出,mgit在一般情况下应该很有用,可以

  • 快速了解N个git项目的情况

  • 一次性获取N个git对象

  • 克隆缺失的项目(如果您倾向于在公共文件夹中克隆来自同一远程的项目,则很有用)

示例用法

mgit可以显示文件夹中所有git项目的状态,例如我的仓库

~/dev/github: mgit
~/dev/github: 4 github/zsimic
     mgit: [master] up to date
  pickley: [master] 1 diff, up to date*  last fetch 1w 4d ago
    runez: [master] up to date*  last fetch 1w 4d ago
setupmeta: [master] up to date*  last fetch 3d 23h ago

在这里,我们可以看到

  • 文件夹~/dev/github中有4个git仓库

  • 所有4个都来自github/zsimic

  • 其中3个有一段时间没有获取了

我们可以使用--fetch

~/dev/github: mgit --fetch
~/dev/github: 4 github/zsimic
     mgit: [master] up to date
  pickley: [master] 1 diff, up to date
    runez: [master] behind 2
setupmeta: [master] up to date

现在所有项目都已更新,我们可以看到其中两个没有新内容,但有一个落后了2个提交(即:远程有2个提交尚未拉取)。输出还显示,其中一个项目有未提交的文件。

如果只有一个项目在范围内,默认情况下会显示修改的文件,例如

~/dev/github: mgit pickley
pickley: [master] 1 diff, up to date
   M tox.ini

在上文中,我们可以看到,问题文件是该项目的 tox.ini。我们可以使用 --verbose(或 -v)标志达到相同的效果,例如,对于两个修改了文件的项目的示例。

~/dev/github: mgit -v
~/dev/github: 4 github/zsimic
mgit: [master] 1 diff, up to date
   M README.rst
pickley: [master] 1 diff, up to date
   M tox.ini
runez: [master] up to date
setupmeta: [master] up to date

概要

~/dev/github: mgit --help
Usage: mgit [OPTIONS] [TARGET]

  Fetch collections of git projects

Options:
  --version                       Show the version and exit.
  --debug                         Show debugging information.
  --color / --no-color            Use colors (on by default on ttys)
  --log PATH                      Override log file location.
  --clean [show|local|remote|all|reset]
                                  Auto-clean branches
  -f, --fetch                     Fetch from all remotes
  -p, --pull                      Pull from tracking remote
  -s, --short / -v, --verbose     Short/verbose output
  -cs                             Handy shortcut for '--clean show'
  -cl                             Handy shortcut for '--clean local'
  -cr                             Handy shortcut for '--clean remote'
  -ca                             Handy shortcut for '--clean all'
  -h, --help                      Show this message and exit.

安装

获取 mgit 的最简单方法是通过 pickleypipx

pickley install mgit

或者

pipx install mgit

您也可以从源代码编译

git clone https://github.com/zsimic/mgit.git
cd mgit
tox -e venv

.venv/bin/mgit --help

source .venv/bin/activate
mgit --help

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

mgit-1.3.0.tar.gz (17.0 kB 查看散列)

上传时间

构建分布

mgit-1.3.0-py2.py3-none-any.whl (16.6 kB 查看散列)

上传时间 Python 2 Python 3

由以下机构支持