
bauk/gitbauk/git镜像用于在Docker Hub上自动构建,旨在提供一种简单的方式来试用或测试不同版本的Git,无需手动安装。通过该镜像,用户可以快速切换不同Git版本,适用于开发测试、版本兼容性验证等场景。
| 格式 | 示例 | 说明 |
|---|---|---|
| {version} | 2.24.0 | 使用该Git版本的最后一个CentOS构建 |
| {os}-{version} | centos-2.24.0 | 特定操作系统和Git版本的最后一个构建 |
| {os}-{version}-{commit} | centos-2.24.0-712c3fe | 包含提交ID的唯一标签,不会更新 |
| {os} | centos | 特定操作系统的最新Git版本构建 |
| latest | latest | 最新的CentOS构建,包含最高Git版本 |
| {type} | full | 特定类型的最新构建(默认操作系统) |
| {type}-{version} | full-2.24.0 | 特定类型和Git版本的构建(默认操作系统) |
| {os}-{type} | centos-full | 特定操作系统和类型的构建 |
| {os}-{type}-{version} | centos-full-2.24.0 | 特定操作系统、类型和Git版本的构建 |
| {os}-{type}-{version}-{commit} | centos-full-2.24.0-712c3fe | 包含提交ID的特定操作系统、类型和Git版本的唯一构建 |
内部标签(请勿使用,可能变更):{os}-base(基础镜像)、{os}-build-base(构建基础镜像)、{os}-build-{version}(编译缓存镜像)、docs(文档镜像)
| 操作系统 | 描述 |
|---|---|
| fedora | 默认操作系统 |
| centos | 最新CentOS版本,当前指向centos8 |
| centos8 | 基于CentOS 8 |
| centos7 | 已过时,基于CentOS 7,不再更新,但旧版本仍可使用 |
| 类型 | 描述 |
|---|---|
| (无类型) | 基础镜像,仅安装Git |
| full | 完整镜像,包含git-filter-repo、vim、git-lfs等工具 |
传递给镜像的任何命令将直接传递给Git(例如show将执行git show)。若第一个参数是sh或bash,则直接执行该命令(适用于启动交互式会话)。
CFG_开头的变量将转换为Git系统配置,例如CFG_USER_NAME="张三"将执行git config --system user.name "张三"/gitconfigbash# 测试镜像:查看帮助和版本 docker run --rm bauk/git --help docker run --rm bauk/git --version # 启动交互式shell docker run --rm -it bauk/git sh docker run --rm -it bauk/git bash # 对主机仓库执行命令 docker run --rm --user $UID -v /path/to/host/repo:/git bauk/git show docker run --rm --user $UID -v /path/to/host/repo:/git bauk/git log -n3 # 在当前仓库启动交互式会话 docker run --rm -it --user $UID -v $PWD:/git bauk/git bash # 加载自定义git配置文件 docker run --rm -it -v ~/.gitconfig:/gitconfig bauk/git bash # 设置单个配置项(如user.name) docker run --rm -it -e "CFG_USER_NAME=张三" bauk/git config --list # 完整配置示例:当前仓库+自定义配置+交互式会话 docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git bash # 指定Git版本(用于版本测试) docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:1.8.2.3 bash docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:2.24.0 bash # 使用完整版镜像过滤仓库历史(移除a.zip) docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git:full filter-repo --path a.zip --invert-paths
若本地未安装Git,可通过别名使用该镜像(执行速度比本地Git慢,但无需安装)。将以下内容添加到.bash_profile:
bashalias dgit='docker run --rm -it --user $UID -v $PWD:/git -v ~/.gitconfig:/gitconfig bauk/git'
之后可使用dgit代替git(如dgit status)。频繁使用时,可考虑使用持久化容器以提高效率。
通过环境变量传递Git配置:
bashdocker run --rm -it -e CFG_CORE_PAGER=less -e CFG_COLOR_UI=auto bauk/git config --list
每个Docker构建对应一个标签,setupTags.sh脚本用于构建、测试并推送标签至Docker Hub。master分支是所有新标签的基础,更新标签需从master分支新提交重新创建。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务