简体中文 ▾ 主题 ▾ 最新版本 ▾ git-http-push 最后更新于 2.43.0

名称

git-http-push - 通过 HTTP/DAV 将对象推送到另一个仓库

概要

git http-push [--all] [--dry-run] [--force] [--verbose] <URL> <ref> [<ref>…​]

描述

将缺失的对象发送到远程仓库,并更新远程分支。

注意: 如果您的 libcurl 版本低于 7.16,此命令将暂时禁用,因为据报告该组合无法正常工作,有时会损坏仓库。

选项

--all

不假定远程仓库当前处于完整状态,并验证本地引用的整个历史中所有对象在远程仓库中都存在。

--force

通常,如果用于覆盖远程引用的本地引用不是其祖先,则此命令会拒绝更新该远程引用。此标志禁用该检查。这意味着远程仓库可能会丢失提交;请谨慎使用。

--dry-run

执行所有操作,但实际上不发送更新。

--verbose

报告在本地遍历的对象列表以及成功发送到远程仓库的对象列表。

-d
-D

从远程仓库中删除 <ref>。指定的分支不能是远程 HEAD。如果指定了 -d,还必须满足以下其他条件:

  • 远程 HEAD 必须解析为本地存在的对象

  • 指定的分支必须解析为本地存在的对象

  • 指定的分支是远程 HEAD 的祖先

<ref>…​

要更新的远程引用。

指定引用

<ref> 规范可以是一个单独的模式,也可以是一对由冒号 ":" 分隔的模式(这意味着引用名称中不能包含冒号)。单个模式 <name> 只是 <name>:<name> 的简写。

每个模式对 <src>:<dst> 由源端(冒号前)和目标端(冒号后)组成。要推送的引用是通过找到与源端匹配的引用来确定的,而推送到的位置是使用目标端确定的。

  • 如果 <src> 未精确匹配任何一个本地引用,则会报错。

  • 如果 <dst> 不匹配任何远程引用,则:

    • 它必须以 "refs/" 开头;在这种情况下,<dst> 将被字面用作目标。

    • <src> == <dst> 且与 <src> 匹配的引用不得存在于远程引用集中;本地匹配 <src> 的引用将用作目标的名称。

在没有 --force 的情况下,<src> 引用仅在 <dst> 不存在,或者 <dst> 是 <src> 的一个真子集(即祖先)时才存储到远程。此检查,称为“快进检查”,旨在避免意外覆盖远程引用并丢失他人的提交。

使用 --force 时,对所有引用禁用快进检查。

可选地,<ref> 参数可以在前面加上一个加号 +,以仅对该引用禁用快进检查。

GIT

Git[1] 套件的一部分

scroll-to-top