我在Windows上使用最新的git bash(git版本2.6.3.windows.1)并且我试图覆盖我的本地仓库。首先我做了:
git fetch /c/users/xxx/dropbox/repo/master
然后我做
git reset --hard /c/users/xxx/dropbox/repo/master
但是git回来了:
fatal: Invalid object name 'C'.
错误消息的含义是什么?
答案 0 :(得分:3)
这是因为reset
的参数是“tree-ish”,例如分支名称或sha。
所以,我认为你想要的命令是:
cd /c/users/xxx/dropbox/repo
git fetch
git reset --hard origin/master
根据您的评论进行修改:
如果您正在与远程仓库进行交互,则可能需要为其定义远程。
例如:
git remote add dropbox <dropbox url>
然后,命令将变为:
git fetch dropbox
git reset --hard dropbox/master
您的dropbox/master
命令可能需要master
而不仅仅是reset
,因为您刚刚执行的提取会更新您的本地dropbox/master
分支指针而不是master
1}}分支指针。
https://git-scm.com/book/en/v2/Git-Basics-Working-with-Remotes