有些出現的問題實際上是不懂正確的流程,都是在試錯,但是仍是學到了不少東西,寫下了,但願對我和你們都有幫助。html
當我去運行brew update
的時候出現錯誤untracked working tree files
,由於homebrew是用Git
去更新的,因此若是目錄中出現untracked files就會致使不能更新。而後我看了homebrew的Common Issues
文檔。git
其實我對Git還算了解,但是就不知道homebrew的working tree files在哪裏,因此下面的東西就直接解決了個人問題。github
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:sql
cd $(brew --repository) git reset --hard FETCH_HEAD
If brew doctor still complains about uncommitted modifications, also run this command:數據庫
cd $(brew --repository) git clean -fd
當出現pg gem不能bundle install
的時候,我也嘗試過gem install pg -- --with-pg-config
這種提示裏面的命令,但是仍是不能解決這個問題。而後我就用homebrew把postgresql 從9.2.3升級到了9.3.2post
這樣作的直接後果就是postgresql不能正常啓動,出現了一下的提示信息:測試
FATAL: database files are incompatible with server DETAIL: The data directory was initialized by PostgreSQL version 9.2, which is not compatible with this version 9.3.2.
原來postgresql升級之後不能兼容原來的數據文件,就是個悲劇啊。看了一下postgresql的升級文檔,PostgreSQL major versions are represented by the first two digit groups of the version number,原來前兩位數字都是主版本號。ui
通常本身機器上面的都是測試數據,因此能夠直接刪除掉舊的數據庫文件。運行一下命令就能夠了。this
rm -rf /usr/local/var/postgres initdb -D /usr/local/var/postgres
若是你想要之前的數據文件,特別若是遇到在production server上升級了postgresql,那麼你就須要使用pg_dump
出原來的數據文件,而後就要用到pg_upgrade
啦。具體方式能夠查看pg_upgrade
的文檔。postgresql
這個時候pg已經成功安裝成功了,但是在rake db:create
的時候又出現關於postgresql的問題了:
Library not loaded: libpq.5.6.dylib
憑藉本身的經驗,以爲應該是postgresql中lib的這一個文件沒有被rake的時候加載到。
ln -s /usr/local/Cellar/postgresql/9.3.2/lib/libpq.5.6.dylib /usr/local/lib/libpq.5.6.dylib
而後就能夠該幹嗎幹嗎了。