如何解决git说“在合并之前提交更改或存储它们”?

如何解决git说“在合并之前提交更改或存储它们”?

我在我的本地计算机上做了一些更新,将它们推送到远程存储库,现在我正在尝试将更改提取到服务器并获取消息;

错误:合并将覆盖对以下文件的本地更改:

的wp-content / W3TC-配置/ master.php

请在合并之前提交更改或存储更改。

所以我跑了,

git checkout -- wp-content/w3tc-config/master.php

并再次尝试,我收到相同的消息。我假设w3tc在服务器上的配置文件中改变了一些东西。我不关心本地副本或远程副本是否在服务器上(我认为远程副本是最好的),我只是希望能够合并其余的更改(插件更新)。

有任何想法吗?


SMILET
浏览 9511回答 3
3回答

ibeautiful

您无法与本地修改合并。Git可以保护您免于丢失潜在的重要更改。你有三个选择:使用提交更改git commit -m "My message"存放它。Stashing充当堆栈,您可以在其中推送更改,然后以相反的顺序弹出它们。要藏匿,输入git stash合并,然后拉藏:git stash pop放弃本地更改使用git reset --hard或git checkout -t -f remote/branch或者:放弃特定文件的本地更改运用 git checkout filename

长风秋雁

您可以尝试以下方法之一:变基对于简单的更改,尝试在拉动变化的同时进行变基,例如git pull origin master -r因此,它将在获取后将您当前的分支应用于上游分支的顶部。这相当于:checkout master,fetch和rebase origin/masterGit命令。这是一种潜在危险的操作模式。它重写了历史,当你已经发布了这段历史时,它并不是一个好兆头。除非您git-rebase(1)仔细阅读,否则请勿使用此选项。查看如果您不关心本地更改,可以切换到其他分支临时(强制),然后将其切换回来,例如git checkout origin/master -fgit checkout master -f重启如果您不关心本地更改,请尝试将其重置为HEAD(原始状态),例如git reset HEAD --hard如果上面没有帮助,那么它可能是你的git规范化文件(.gitattributes)中的规则,所以最好提交它所说的内容。或者您的文件系统不支持权限,因此您必须filemode在git配置中禁用。相关:如何强制“git pull”覆盖本地文件?
打开App,查看更多内容
随时随地看视频慕课网APP