当我 push一个本地工作目录到中央存储库,所有 中间分支和提交信息(从上次推送到这个)是否被推送?
换句话说,push生成我当前工作目录的整个历史的精确副本,包括提交、分支等,从而可供从中央存储库 pull 的任何其他用户使用?
如果不是所有内容都被推送,那么什么会被排除?
最佳答案
当你运行 git push
,您可以设置在命令行上推送的内容。比如这个
git push origin my-branch:fooo
将分支“my-branch”从本地存储库推送到位于“origin”的分支“fooo”。
当你运行 git push
没有任何参数,它会推送到您当前分支的远程设置(您可以通过 git config branch.<branchname>.remote
看到)并执行 push.default
中配置的操作配置值,其中,根据docs , 可以是以下之一:
-
nothing
- 不要推任何东西。 -
matching
- 推送所有匹配的分支。两端具有相同名称的所有分支都被认为是匹配的。这是默认值。 -
upstream
- 将当前分支推送到其上游分支。 -
tracking
- 已弃用的上游同义词。 -
current
- 将当前分支推送到同名分支。
关于Git Push 说明 - 推送什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6611385/