在本地,我可以在没有任何分支活动的情况下提交,即在签出提交但不是分支之后。是否可以将此不在任何分支中的提交推送到远程?
编辑:我只是想知道理论上 git 将如何处理推送“无分支”或只能使用分支推送。
当你做
git push <remote> <source>:<destination>
Run Code Online (Sandbox Code Playgroud)
该<source>可提交的,是的。
的<destination>,但是,是比较麻烦一些。从文档中获取它:
可以将任何类型的对象推送到 refs/{tags,heads}/ 之外的任何命名空间。在标签和提交的情况下,为了是否允许更新,这些将被视为 refs/heads/ 中的提交。
所以基本上,你主要只推送到远程分支,但是你可以推送提交,只要从他们当前的引用移动到你正在推送的引用是一个快进合并。