2016-10-04 76 views
8

当我运行composer install --prefer-source或尝试更新这一个特定束(他人相处融洽)我得到这个错误:作曲家安装--prefer源抛出错误

Failed to download some-bundle from source: Failed to execute git checkout 'xx' -- && git reset --hard 'xx' -- 

error: The following untracked working tree files would be overwritten by checkout: 
... 
    [ list of all files in repo on a branch that interests me ] 
... 
Please move or remove them before you can switch branches. 
Aborting 

我假设我就搞砸了什么捆绑存储库,但不知道是什么。

  1. 我克隆全新的项目库
  2. 我试试“作曲家安装--prefer来源”,并仍然得到这个错误。

有趣的是 - 错误只发生在MAC上的docker上。在其他与Linux的电脑它工作正常。

+0

什么版本的作曲家?其他人报告了相同的问题,并且作曲家的更新将其排除。值得一试? “对于遇到这个问题的其他人尝试更新作曲家--prefer-dist”。其他建议在GIT Bash中运行,而不是CMD(Windows)。 – Robbie

+0

作曲家版本1.2.1 2016-09-12 11:27:19。 --prefer-dist无法正常工作 - 我无法直接从供应商处发送更改。但我认为这只是MAC上的问题。 – mmmm

+0

解决方案是永远不会*在供应商文件夹内进行修改。这与作曲家,供应商文件夹以及一般适当的开发实践的整个方面直接相反。 – Sammitch

回答

7

看起来您已经手动更新了此捆绑软件的供应商目录中的源代码。

如果是这样,请在更新软件包之前直接在供应商目录中提交/推送或重置它们。

如果不是,它可能涉及到这个问题:https://github.com/composer/composer/issues/2896

作者写道:

“这个问题可以有两种方式:

  • 积攒的时候,加--include - 这将存储新添加的文件以及

  • 当检出时,添加 - 强制标志将覆盖文件,而不是borting“。

如果没有任何帮助,您可以手动删除供应商目录以强制composer新安装软件包。 编辑请看看https://getcomposer.org/doc/03-cli.md#clear-cache,也许作曲家已经将git仓库缓存在某处并且无法更新它。

+0

我编辑了我的问题。即使我从头开始,错误仍然存​​在。 – mmmm

+0

@mmmm作曲家可能在内部缓存了某些东西,我编辑了我的回复 – P0rnflake

+0

我尝试清除缓存,甚至当我从克隆新回购和在Docker上安装供应商时开始出现错误。 – mmmm