2014-02-28 52 views
1

我開發PHP應用程序和使用Git來部署它在Heroku我是新來的git停止變化的影響一個特定的文件夾中的GIT

該項目幾乎快要結束,現在我的日誌文件夾不應該影響服務器了我從現在的意思是日誌文件應該不僅節省了服務器的狀態不是我的本地分行,該結構是這樣的:

MyProject 
| 
    -logfolder/* 

我把logfolder/* 在gitignore文件,但仍然改變我自己日誌文件夾與服務器的其他更改一起推送,..

我該怎麼辦?

在此先感謝

回答

1

你必須讓這個添加的文件進行索引:

git rm -r --cached logfolder 
git add logfolder 
git commit -m "fixing .gitignore" 
+0

它沒有工作,它從服務器副本中刪除文件夾和它的文件,以及它不再存在 – Siavosh

+0

然後回到此錯誤的建議之前的提交。抱歉。但是你仍然要把它們從索引中拿出來。 – imizeropt

0

你應該從控釋片索引中刪除logfolder文件,並在logfile目錄中添加一個.gitignore文件,該文件包含以下內容。

# Ignore everything in this directory 
* 
# Except this file 
!.gitignore 

此鏈接顯示如何製作空目錄。 How can I add an empty directory to a Git repository?

而這些命令應該可以解決您的問題。

git rm --cached -r logfile 
git add logfile/.gitignore 

然後嘗試看到一切正常,git狀態。並提交您的更改。

您不需要在.gitignore根文件中提及「logfile/*」。

+0

我覺得你沒有明確表示我的問題,我不需要做一個文件夾清空我的問題是這樣的:我有日誌文件夾,其中包含日誌文件我上傳整個項目在服務器上,但我不需要我的本地日誌文件會影響服務器副本,顯然是因爲它們應該記錄服務器。 git rm --cached -r logfolder會刪除服務器中的目錄 – Siavosh

+0

'git rm --chached -r logfolder'不會刪除任何文件或文件夾,它只是將它們從git中刪除。 – hossein

+0

不,你是對的,它不會從本地副本中刪除任何東西,但一旦下一次推送到服務器提交,該文件夾將從服務器副本中刪除 – Siavosh

相關問題