我在VSCodium中使用git,每次我尝试拉git时,它都在抱怨。
我看了看日志
> git pull --tags origin master
From https://github.com/MY/REPO
* branch master -> FETCH_HEAD
! [rejected] latest -> latest (would clobber existing tag)
9428765..935da94 master -> origin/master
使用--force
执行命令会有所帮助,直到下次执行。
我不清楚这里出了什么问题。发生了什么以及如何解决此问题?
我是说:除了毁了我本地的仓库和再次克隆。
4条答案
按热度按时间y53ybaqx1#
您应该使用远程标记更新本地标记:
然后再拉。
原因
在远程,某人删除了一个标签并创建了一个同名的新标签,然后这将发生在本地
nwnhqdif2#
既然您说不清楚出了什么问题,我假设您没有使用该标记做任何事情,您只是想做自己的工作。
关闭此设置:
"git.pullTags": false
添加到settings.json文件中'*现在你都准备好了
标签只是对特定提交的引用(就像分支名称一样),主要区别是
git
(据我所知)假设标签不会改变,而分支则期望被更新。因此,"错误"是您在本地有一个名为
latest
的标记指向提交X-但远程有一个名为latest
的标记指向提交Y。如果您从远程应用更改,您将覆盖本地标记。默认情况下,VSCode将提取所有标记,因此您会得到错误。
有一个像
latest
这样的"移动"标记没有什么"错误",这只是VSCode没有考虑到(个人观点)。或者,您可以使用命令行并手动输入
git pull
命令来避免此问题。具体来说,您需要省略--tags
以跳过此过程步骤。如果你这样做,你的标签将不会更新-但我不认为这是一个问题。
ct3nt3jp3#
原因可能是您或其他参与者删除了原始标记并重新创建了相同的标记。
解决方案:
强制刷新本地标记
当使用按钮更新编辑器中的代码时,默认情况下将首先使用
git pull --tags origin master
因此,您可以将此
"git.pullTags": false
添加到Vscode的配置文件settings.json中tgabmvqs4#
编辑:需要澄清的是,最初的问题与
git
问题有关。虽然可能不明显,但yarn
也可能有git依赖项。因此,对于在运行yarn install
时出现此错误的0.1%用户,这是为您准备的!如果没有,请使用已接受/热门答案。当我尝试运行
yarn install
时,我得到了这个包的错误。接受的答案是当前的repo,对我不起作用,但这个工作:我以前试过删除
node_modules
,我猜是清理Yarn缓存造成的。