~/www> git branch --track live origin/master
fatal: Not a valid object name: 'origin/master'.
~/www> git remote
origin
~/www> git branch
* master
test_branch
working_branch
我还尝试使用以下方法创建跟踪分支:
git branch live
git branch --set-upstream live origin/master
但是我得到了同样的错误
答案 0 :(得分:11)
$ git branch -r
origin/1.x
origin/1.x@60
origin/1.x@63
origin/HEAD -> origin/master
origin/master
$ git branch --track live origin/blah
fatal: Not a valid object name: 'origin/blah'.
如上所述,您只能跟踪已添加的遥控器。也许像这样添加遥控器
$ git remote add upstream git://github.com/svnpenn/rtmpdump.git
$ git fetch upstream
答案 1 :(得分:5)
git remote
的输出确认您已成功添加了origin
遥控器。
我预计问题是你还没有创建远程跟踪分支。如果你执行git branch -r
,它可能不会输出任何内容。因此origin/master
不是有效的对象名称,因为远程跟踪分支尚不存在。
解决方案是git fetch origin
来创建远程跟踪分支。如果您执行git branch -r
,则会看到origin/master
现在存在。
答案 2 :(得分:1)
我遇到了同样的问题。事实证明我在遥控器上没有写入权限。因而错误。
确保您具有远程写入权限。没有一个是导致此特定错误的原因之一。
答案 3 :(得分:0)
在没有master分支的情况下尝试建立分支时,会出现这个错误。 考虑以下场景:
var foundHandle = FindWindowEx(OutlookWindowInterceptor.Instance.Handle, (IntPtr)0, null, "FolderBar\0");
foundHandle = FindWindowEx(foundHandle, (IntPtr)0, null, "NUIDocumentWindow\0");
foundHandle = FindWindowEx(foundHandle, (IntPtr)0, "NetUIHWND\0", null);
base.AssignHandle(foundHandle);
_handle = this.Handle;
foundHandle = FindWindowEx(foundHandle, (IntPtr)0, "NetUICtrlNotifySink\0", null);
if (MailUtility.IsOffice2019Installed())
{
foundHandle = FindWindowEx(foundHandle, (IntPtr)0, "RICHEDIT60W\0", null);
}
editBoxHandle = foundHandle;
bool result = ShowWindow(editBoxHandle, 0);
if (result)
Print("Hide success");
else
Print("Hide Fail");
在我们第一次提交后会创建一个主分支。让我们提交一个文件并检查分支列表:
$ git init
Initialized empty Git repository in /Users/amir/gitdemo/.git/
$ git branch feature-1
fatal: Not a valid object name: 'master'.
既然已经创建了 master,我们现在可以创建一个分支:
$ touch test.txt
$ git add test.txt
$ git commit -m "First commit"
$ git branch
* main