近幾天在Ubuntu系統中使用Netbeans做為開發環境並使用Git作為代碼管理的時候,提示代碼都被標記為已修改狀態,但是進行仔細比較的時候,卻發現並沒有修改。。 看了以下文章後,根據自身的實際情況對比了下,發現原來我在代碼克隆下來的時候,有意的對整個項目目錄執行過 chmod 777 ,所以才產...
近幾天在Ubuntu系統中使用Netbeans做為開發環境並使用Git作為代碼管理的時候,提示代碼都被標記為已修改狀態,但是進行仔細比較的時候,卻發現並沒有修改。。
看了以下文章後,根據自身的實際情況對比了下,發現原來我在代碼克隆下來的時候,有意的對整個項目目錄執行過 chmod 777 ,所以才產生了我現在所遇到的問題!
以下文章參考來源:http://blog.sina.com.cn/s/blog_6accbcc30101fcac.html
stackoverflow上一堆人遇到這個問題,大多數人都是line ending不同導致的,比如windows和mac不同導致的,我試著修改git配置加上core.autocrlf=false(執行git config --system ),發現不行。又修改了core.whitespace=cr-at-eol還是不行。
然後忽然發現我的sourcetree上顯示修改的提示是:modified, mode 100644 to mode 100755,忽然想起來,自己曾在項目文件夾上執行過chmod 777,也就是說git認為文件的許可權變了,所以將文件標記為changed,但是我們看git diff或比較時,看不到差異。
然後再修改git配置,加上core.filemode=false,發現還是不行,估計是我本地某一步操作錯了,導致這個設置沒起作用。