update - uninstall homebrew
Brew update failed: untracked working tree files would be overwritten by merge (8)
This post helped me after updating to El Capitan. In my case,
chown wasn't working ("zsh: command not found: chown"), so step 1 was adding this line to my .zshrc:
I'd already tried several of the more popular answers above, so I'm pretty sure that
git status was coming up clean by the time I pasted in the critical command from the blog post:
sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local
Trying to update Homebrew with
brew update I got the following error
error: The following untracked working tree files would be overwrittenby merge: Library/Formula/argp-standalone.rb Library/Formula/cocot.rb Please move or remove them before you can merge. Aborting Updating e088818..5909e2c Error: Failed while executing git pull origin refs/heads/master:refs/remotes/origin/master
I found a blog post by someone who experienced a similar problem after having installed Mountain Lion (which I did this week too). He explains how he removed the files referred to in the error message
I removed these files: $ cd $(brew --prefix) $ rm cocot.rb However, removing these files didn't help with the brew update. Instead I had to manually update brew through git: $ cd $(brew --prefix) $ git fetch origin $ git reset --hard origin/master $ brew update Already up-to-date.
Assuming those instructions are correct (which I maybe shouldn't assume), I tried to follow these instructions and do
$ cd $(brew --prefix) $ rm cocot.rb
However, it said 'file doesn't exist' when I tried to rm cocot.rb
One thing I'm not sure about is the
cd $(brew --prefix) Are those the exact words I type or do I have to replace prefix with something? the cd was successful, so I'm assuming it was correct -- it moved me into /usr/local, but there was no file to remove. Contents of /usr/local are
Cellar clamXav git mysql var Library doc heroku mysql-5.5.15-osx10.6-x86_64 README.md etc include rvm bin foreman lib share
At any rate, do you know how I can fix the 'brew update'
Update: After removing the files according to favoretti's instructions and trying
chown -R <your_username> $(brew --prefix)/.git, I got the following error running
error: The following untracked working tree files would be overwritten by merge: Library/Aliases/gperftools Library/Aliases/hashdeep Library/Aliases/htop Library/Aliases/nodejs Library/Aliases/ocio Library/Aliases/oiio Library/Aliases/pgrep Library/Aliases/pkill Library/Aliases/qt4 Library/Aliases/twolame Library/Aliases/wxwidgets Library/Contributions/cmds/brew-aspell-dictionaries Library/Contributions/cmds/brew-beer.rb Library/Contributions/cmds/brew-dirty.rb Library/Contributions/cmds/brew-graph Library/Contributions/cmds/brew-grep Library/Contributions/cmds/brew-leaves.rb Library/Contributions/cmds/brew-linkapps.rb Library/Contributions/cmds/brew-ls-taps.rb Library/Contributions/cmds/brew-man Library/Contributions/cmds/brew-md5-to-sha1 Library/Contributions/cmds/brew-mirror-check.rb Library/Contributions/cmds/brew-pull.rb Library/Contributions/cmds/brew-readall.rb Library/Contributions/cmds/brew-server Library/Contributions/cmds/brew-services.rb Library/Contributions/cmds/brew-switch.rb Library/Contributions/cmds/brew-test-bot.rb Library/Contributions/cmds/brew-tests.rb Library/Contributions/cmds/brew-unpack.rb Library/Contributions/cmds/brew-which.rb Library/Contributions/cmds/git Library/Contributions/cmds/svn Library/ENV/4.3/apr-1-config Library/ENV/4.3/bsdmake Library/ENV/4.3/c++ Library/ENV/4.3/c89 Library/ENV/4.3/c99 Library/ENV/4.3/cc Library/ENV/4.3/clang Library/ENV/4.3/clang++ Library/ENV/4.3/cpp Library/ENV/4.3/g++ Library/ENV/4.3/gcc Library/ENV/4.3/git Library/ENV/4.3/i686-apple-darwin11-llvm-g++-4.2 Library/ENV/4.3/i686-apple-darwin11-llvm-gcc-4.2 Library/ENV/4.3/ld Library/ENV/4.3/llvm-g++ Library/ENV/4.3/llvm-g++-4.2 Library/ENV/4.3/llvm-gcc Library/ENV/4.3/llvm-gcc-4.2 Library/ENV/4.3/make Library/ENV/4.3/mig Library/ENV/4.3/sed Library/ENV/4.3/svn Library/ENV/4.3/xcrun Library/ENV/libsuperenv.rb Library/ENV/pkgconfig/leopard/libcrypto.pc Library/ENV/pkgconfig/leopard/libcurl.pc Library/ENV/pkgconfig/mountain_lion/libcurl.pc Library/ENV/pkgconfig/mountain_lion/libexslt.pc Library/ENV/pkgconfig/mountain_lion/libxml-2.0.pc Library/ENV/pkgconfig/mountain_lion/libxslt.pc Library/Formula/abcl.rb Library/Formula/abcmidi.rb Library/Formula/aiccu.rb Library/Formula/akka.rb Library/Formula/alac.rb Library/Formula/alure.rb Library/Formula/appledoc.rb Library/Formula/arangodb.rb Library/Formula/argp-standalone.rb Library/Formula/argtable.rb Library/Formula/autopano-sift-c.rb Library/Formula/avian.rb Library/Formula/avidemux.rb Library/Formula/avro-cpp.rb Library/Formula/aws-cloudsearch.rb Library/Formula/aws-sns-cli.rb Library/Formula/backupninja.rb Library/Formula/bact.rb Library/Formula/bam.rb Library/Formula/basex.rb Library/Formula/berkeley-db4.rb Library/Formula/bind.rb Library/Formula/blazeblogger.rb Library/Formula/bochs.rb Library/Formula/boost149.rb Library/Formula/bsdconv.rb Library/Formula/bsdmake.rb Library/Formula/buildapp.rb Library/Formula/bup.rb Library/Formula/byacc.rb Library/Formula/cadubi.rb Library/Formula/camellia.rb Library/Formula/casperjs.rb Library/Formula/ccextractor.rb Library/Formula/cconv.rb Library/Formula/cdo.rb Library/Formula/cdpr.rb Library/Formula/cgvg.rb Library/Formula/checkstyle.rb Library/Formula/chordii.rb Library/Formula/chruby.rb Library/Formula/cifer.rb Library/Formula/clhep.rb Library/Formula/cntlm.rb Library/Formula/cocot.rb Library/Formula/cogl.rb Library/Formula/collada-dom.rb Library/Formula/crash.rb Library/Formula/crossroads.rb Library/Formula/crosstool-ng.rb Library/Formula/css-crush.rb Library/Formula/csync.rb Library/Formula/ctemplate.rb Library/Formula/curlftpfs.rb Library/Formula/cutter.rb Library/Formula/cvsutils.rb Library/Formula/darkstat.rb Library/Formula/darner.rb Library/Formula/dart.rb Library/Formula/dasm.rb Library/Formula/debianutils.rb Library/Formula/dfc.rb Library/Formula/dgtal.rb Library/Formula/dhcping.rb Library/Formula/di.rb Library/Formula/dmtx-utils.rb Library/Formula/drip.rb Library/Formula/dsniff.rb Library/Fo Aborting Updating e088818..c1fbc29 Error: Failed while executing git pull origin refs/heads/master:refs/remotes/origin/master
Another option is to just use
The brew update command performs a
git pull, so if there are any changed files (or even file attributes, which happened to me when I changed permissions in the directory recursively) you have to somehow fix the conflicts. Using
git stash is one way; it takes any changes and puts them aside so you effectively revert to the last updated repo version. The Homebrew 'location' is by default
/usr/local and it installs as a git repository. You can look for a
.git folder to see for yourself. I'm writing a homebrew uninstall script to be posted on my GitHub profile soon with more info.
I was able to fix this on my machine by adding admin group write (and setgid bit) permission at these paths:
sudo chmod -R g+ws /usr/local /Library/Caches/Homebrew
The s sets the group id on execution so that the write permissions aren't lost the next time a different admin user updates or upgrades Homebrew.
This answer is somewhat incomplete because when I try to do
brew cleanup --force there is a permissions issue when Homebrew tries to remove content in /usr/local/Cellar/. (Unfortunately I'm not able to investigate this further at the moment.)
Resetting the brew repository should be the most efficient way if you don't mind to discard potential modifications on formulas you might have been applied:
$ cd `brew --prefix` $ git fetch origin $ git reset --hard origin/master $ brew cleanup --force $ brew update
This is caused by an old bug in the
update code that has long since been fixed. However, the nature of the bug requires that you do the following:
cd $(brew --repository) git reset --hard FETCH_HEAD
brew doctor still complains about uncommitted modifications, also run this command:
cd $(brew --repository) git clean -fd
This should work.
1. cd `brew --prefix` 2. git fetch origin 3. git reset --hard origin/master 4. sudo brew update
$ cd $(brew --prefix) $ git clean -fd $ git reset --hard $ sudo chown -R `whoami` `brew --prefix` $ brew update
Note: steps 2&3 worked for me since I did step 5 before 4 before I got the error. The brew update before changing the owner of the folder caused the whole problem.
cd $(brew --prefix) git reset --hard HEAD brew update