Git 无效的对象名称';C';
我在Windows上使用最新的GitBash(GitVersion2.6.3.Windows.1),我正在尝试覆盖我的本地回购协议。首先我做了:Git 无效的对象名称';C';,git,Git,我在Windows上使用最新的GitBash(GitVersion2.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'. 错误消息的含义是什么?这是因为reset的参数是一个“”,例如分支名称
git fetch /c/users/xxx/dropbox/repo/master
那我会的
git reset --hard /c/users/xxx/dropbox/repo/master
但git带来了:
fatal: Invalid object name 'C'.
错误消息的含义是什么?这是因为
reset
的参数是一个“”,例如分支名称或sha
因此,我认为您需要的命令是:
cd /c/users/xxx/dropbox/repo
git fetch
git reset --hard origin/master
编辑您的评论:
如果您正在与远程回购进行交互,您可能希望为其定义一个远程回购
例如:
git remote add dropbox <dropbox url>
对于reset
命令,您可能需要dropbox/master
而不仅仅是master
,因为刚才执行的提取操作会更新本地dropbox/master
分支指针,而不是master
分支指针
dropbox是我的远程回购。我的当前位置是位于不同文件夹中的本地回购。这会改变你的答案吗?简言之,答案是我需要使用远程repo的别名来使用git reset--hard?@chhenning基本上,reset命令需要某种git引用来改变你的头指针。在您的问题中,您正在传递一个文件路径,这使Git感到困惑。由于您刚刚完成了一次获取,这意味着您正在从Git服务器下载最新的内容,因此,无论您将哪个远程设备分配给dropbox repo(origin,或者我的回答中显示的“dropbox”),如果您使用/origin/master而不是origin/master,您都需要使用remote\uu/\u branchnameSame消息引用该引用。那个模糊的信息需要一些解释。(如果以“/”开头,则需要哪个对象)
git fetch dropbox
git reset --hard dropbox/master