2015-10-16 74 views
3

我正在編寫一個C++應用程序,該應用程序在source目錄中有源文件,其中有一個build目錄。 build目錄包含Makefile,所以當我從構建目錄構建程序時,我這樣做了。Git:在未跟蹤的構建目錄中使用Makefile

我想git忽略build目錄,因爲它不包含源文件。但是,我確實想要git來跟蹤Makefile。跟蹤Makefile但忽略其他構建文件的最佳做法是什麼?我應該使用另一個目錄結構嗎?

謝謝!

回答

6

通知Git來忽略某些.gitignore中的文件通過將!預先加入到一個模式中。所以,你可以把一個文件.gitignorebuild目錄中有這樣的內容:

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

要給予信貸,我認爲信用是因爲,this可能是我第一次瞭解了這些異常。

+0

啊,我一直在使用我的根級.gitignore來忽略整個構建目錄,所以我無法告訴git不要忽略構建目錄中的Makefile。單獨的.gitignore文件爲我解決了這個問題。 –

3

忽略規則只是文件git不知道的,你也可以通過指定它的名字git add任何文件。

所以,僅僅混帳添加Makefile文件,並添加無視規則,無視建/

你可以放置一個.gitignore文件build/與模式*

+0

雖然這個回答完全正確,但它沒有解決Makefile意外刪除的問題,如果提交,這會使得在後續提交中再次添加它變得更加困難。最好明確一點,並使用.gitignore異常。 – SirDarius

+0

呃...你可以像命令行和圖形用戶界面一樣添加任何其他文件。 –

相關問題