git pull更新錯誤解決辦法



git pull更新錯誤解決辦法

Your local changes to the following files would be overwritten by merge
error: Your local changes to the following files would be overwritten by merge:


        protected/config/main.php
Please, commit your changes or stash them before you can merge.


參考http://blog.csdn.net/zwhfyy/article/details/8625228


如果希望保留生產服務器上所做的改動,僅僅併入新配置項, 處理方法如下:


git stash
git pull
git stash pop
然後可以使用git diff -w +文件名 來確認代碼自動合併的情況.


反過來,如果希望用代碼庫中的文件完全覆蓋本地工作版本. 方法如下:


git reset --hard
git pull
其中git reset是針對版本,如果想針對文件回退本地修改,使用




untracked working tree file
參考:http://blog.csdn.net/sheismylife/article/details/7204345
編寫腳本自動編譯並部署時的注意


如果想在C2上編寫腳本自動從S1上獲取最新代碼時,要注意:


1.首先之前產生的公鑰不能設密碼,否則每次git pull的時候都會要求輸入密碼。


2.不要將項目中的編譯中間文件提交到S1上,比如CMake工程裏面的build目錄的文件,Maven工程裏面的target目錄裏面的文件。否則下次在C2等客戶端用git pull會報類似於這樣的錯誤:


error: Untracked working tree file 'public/images/icon.gif' would be overwritten by merge.
需要執行下面的命令才能修復:


git reset --hard HEAD    
git clean -f -d    
git pull  


把文件從版本管理中移除

#git rm -r -n --cached 文件路徑

發佈了32 篇原創文章 · 獲贊 32 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章