为什么我没有收到错误 "fatal: The current branch A has no upstream branch."
Why I don't get the error "fatal: The current branch A has no upstream branch."
这就是为什么我没有得到错误“致命:当前分支A没有上游分支。”
我用命令 git push origin :A
删除了 REMOTE branch A 。
然后我用命令 git checkout A
切换到 LOCAL branch A 。
添加、提交和推送后,我没有收到错误“致命:当前分支 A 没有上游分支。”
为什么之前删除了远程分支A不存在,为什么不出现这个错误?
因为你期望的错误与远程分支的存在与否无关。这与您的本地分支机构定义了“目的地”(“上游分支机构”)有关。
删除远程分支时,不会从本地分支中取消设置上游分支。
您的本地分支可以定义一个不存在的上游分支yet/anymore。
即使您删除了远程分支,您的本地存储库仍然具有本地分支指向特定远程分支的配置。您可以通过查看文件 .git/config
来检查此配置。您应该看到如下所示的条目,只有您的分支名称:
[branch "master"]
remote = origin
merge = refs/heads/master
这就是为什么我没有得到错误“致命:当前分支A没有上游分支。”
我用命令 git push origin :A
删除了 REMOTE branch A 。
然后我用命令 git checkout A
切换到 LOCAL branch A 。
添加、提交和推送后,我没有收到错误“致命:当前分支 A 没有上游分支。”
为什么之前删除了远程分支A不存在,为什么不出现这个错误?
因为你期望的错误与远程分支的存在与否无关。这与您的本地分支机构定义了“目的地”(“上游分支机构”)有关。
删除远程分支时,不会从本地分支中取消设置上游分支。
您的本地分支可以定义一个不存在的上游分支yet/anymore。
即使您删除了远程分支,您的本地存储库仍然具有本地分支指向特定远程分支的配置。您可以通过查看文件 .git/config
来检查此配置。您应该看到如下所示的条目,只有您的分支名称:
[branch "master"]
remote = origin
merge = refs/heads/master