2012-07-11 150 views
0

我遇到了rails 3.2/git的一個奇怪的bug。奇怪的錯誤發生在rails/git

在開發模式下,類未在請求(控制器,模型,幫助程序)之間重新加載,但視圖正常工作。

我尋覓了很長一段時間在未修改的配置(application.rb中,development.rb ...)沒有成功,我一定要重裝薄顯示改變。

所以我決定創建一個新的分支,並恢復提交的提交(我在想一個壞的更新/集成GEM)和代碼重新加載正確上次提交!

回到主分支,代碼可以在請求之間正確重新加載,而不需要更改任何代碼。我正在運行Archlinux,ruby 1.9.3p194(rvm),postgresql 9.1.4,git 1.7.11.1,ext4 FS調優(UUID = ac74249f-84de-40d0-8b14-eb494983cfda/home ext4默認值,noatime ,數據回寫=,阻隔= 0,nobh,錯誤=重新掛載-RO 0 1)

,你怎麼看待這個問題?


這個bug永遠不會回來,很難重現。我無法接受不確定的答案。

+2

我不知道足夠的軌道來調試您的問題,但「通過提交回復提交」讓我很難過。 [查找](http://git-scm.com/book/en/Git-Tools-Debugging-with-Git)'git bisect'。 [它會改變你的生活。](http://git-scm.com/book/en/Git-Tools-Debugging-with-Git) – Christopher 2012-07-11 15:07:39

+0

很酷的提示,謝謝! – m4tm4t 2012-07-11 16:11:59

回答

2

我認爲你的問題與GIT無關,只有rails。

嘗試把你的config /環境/ development.rb:

config.cache_classes = false 

這是導軌配置告訴它重新加載請求之間的類(如模型或控制器)。

只是可以肯定,運行Rails服務器:RAILS_ENV=development rails s

+0

我確定在100%時這不是導軌問題,因爲環境配置沒有受到影響,並且在創建新的git分支後問題消失。在這個問題上,環境發展良好 – m4tm4t 2012-07-11 16:01:29

0

也許問題是在fstab中noatime選項。如果時間戳沒有被觸及,那麼軌道現在應該如何改變文件。您可以嘗試刪除該選項。