是否可以将签出的历史记录(分离的HEAD )推送到远程分支,而不签出本地分支?
如果需要相应的本地分支,可以稍后在本地签出远程分支。我不需要跟踪;而且我不想使用标签。
我尝试了git push my_remote HEAD:my_remotebranch_name
,但是 git 告诉我:
错误:无法推送到不合格的目的地:my_remotebranch_name 目标refspec既不匹配远程服务器上的现有ref,也不以refs /开头,我们无法根据源ref猜测前缀。
我该如何实现?
答案 0 :(得分:1)
解决方案是为远程分支使用完全限定名称,以消除歧义,而不要让 git 猜测。
git push my_remote HEAD:refs/heads/my_remotebranch_name
如果 HEAD 处于分离状态(这就是我的情况),这将起作用。
谢谢@phd。
答案 1 :(得分:0)
我不确定我是否完全理解您的问题。这是我的理解:您想将本地git头上的更改推送到远程分支,而无需在本地上实际创建新分支。
我试图那样做。我提取了一个仓库,进行了一些更改并运行:git push origin master:dummy
和git push origin HEAD:dummy2
它工作正常。它将在您的远程仓库中创建一个新分支,并将更改推送到该分支。