Git推送--所有VS--镜像 [英] Git push --all vs --mirror

查看:15
本文介绍了Git推送--所有VS--镜像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

git push --allgit push --mirror有什么区别?

我只知道:

  • 删除本地分支后,--all不推送,而--mirror推送。

这正确吗?

是否有其他差异?

推荐答案

the documentation中所述:

--全部

推送所有分支(即refs/heads/下的引用);不能使用 与其他<;参考规范&>。

--镜像

    ...指定镜像refs/(包括但不限于refs/heads/refs/remotes/refs/tags/)下的所有引用...

所以a,如果不是,关键区别是一个意味着refs/heads/*,一个意味着refs/*refs/heads/*名称是分支名称。refs/remotes/中的任何内容都是远程跟踪名称,refs/tags/中的任何内容都是标记名。其他值得注意的名称空间包括refs/notes/refs/replace/和单数refs/stash

--mirror选项继续提及:

本地更新的ReFS将在远程端强制更新, 并将从远程端删除已删除的引用。

因此--mirror有效地同时暗示--force--prune--all不是。但是,如果愿意,您可以将--force和/或--prune添加到git push --all

始终由其他Git决定是服从礼貌请求(没有--force发送的请求)还是命令(--force)对其引用进行更改。

删除本地分支后,--all不推送,而--mirror推送。

这是--prune选项的结果:Tell Your Git to Use--prune意思是"要求他们删除其名称空间中不在我的名称空间中的名称"。

这篇关于Git推送--所有VS--镜像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆