我在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
执行命令会有所帮助。
我不清楚这里出了什么问题。发生了什么事,我如何解决这个问题?
我的意思是:除了破坏我当地的回购和克隆。
发布于 2019-09-20 15:31:31
既然你说不清楚哪里出了问题,我想你不会在任何事情上使用那个标签,你只是想做你自己的工作。
关闭此设置:
或将此"git.pullTags": false
添加到settings.json文件中
现在你们都准备好了。
详细说明:
标记只是对特定提交的引用(就像分支名称一样)。主要的区别是,git
(据我所知)假定标记不会改变,在那里将更新分支。
因此,“错误”是在本地有一个名为latest
的标记,它指向commit X,但是遥控器有一个名为latest
的标记,指向提交Y。如果从远程应用更改,您将覆盖本地标记。
默认情况下,VSCode将提取所有标记,因此您将得到错误。
拥有像latest
这样的“移动”标签没有什么错,这只是VSCode没有考虑到的东西(个人意见)。
或者,您可以通过使用命令行并手动输入git pull
命令来避免此问题。具体来说,您需要省略--tags
以跳过该过程的这一步骤。
如果您这样做,您的标签将不会被更新-但我不认为这是一个关注。
发布于 2019-10-17 17:55:00
您应该用远程标记更新本地标记:
git fetch --tags -f
然后再拉一次。
原因
在remote上,有人删除一个标记并创建一个同名的新标记,然后在本地发生这种情况。
发布于 2021-10-28 09:21:06
原因可能是您或其他贡献者删除了一个原始标记并重新创建了相同的标记。
解决办法:
git fetch --tags -f
被迫刷新本地标记
当使用按钮更新编辑器中的代码时,默认情况下将首先使用git pull --tags origin master
因此,可以将此"git.pullTags": false
添加到Vscode的配置文件settings.json中。
https://stackoverflow.com/questions/58031165
复制相似问题