我想忽略不具有擴展名混帳 - 忽略基於模式
例如可執行文件的文件:
gcc -o foo foo.c
我知道我可以添加「富」到我的.gitignore文件,但如果我決定更改可執行文件的名稱,我需要更新我的.gitignore文件...
我想忽略不具有擴展名混帳 - 忽略基於模式
例如可執行文件的文件:
gcc -o foo foo.c
我知道我可以添加「富」到我的.gitignore文件,但如果我決定更改可執行文件的名稱,我需要更新我的.gitignore文件...
對於您來說手動維護gitignore可能是最好的了。你可以這樣做:
*
!*.*
排除一切,然後用「。當然,目前跟蹤的目錄仍然會被跟蹤,但是如果您添加了新目錄,git-status
就不會看到它,並且您必須使用add -f
才能使其進入。
這可能並不好無論如何,不應該追蹤擴展少的文件。您可能最終會遇到一些自然現象 - 例如,README和INSTALL很常見。意外忽略文件比不得不修改gitignore更糟糕。修改gitignore可能需要幾秒鐘的時間,但是當你需要這樣做的時候它會很明顯。如果你不小心忽略了一個文件,你很容易就無法檢查並丟失工作。
我通常使用makefile hack處理這個問題。在我的Makefile中,我有可執行$(名稱)的名稱,然後我這樣做:
#first rule
all: gitignoreadd ... more depends
... some commands ...
gitignoreadd:
grep -v "$(name)" .gitignore > temp
echo $(name) >> temp
mv temp .gitignore
gitignoreremove:
grep -v "$(name)" .gitignore > temp
mv temp .gitignore
這條規則可以就做適當的地方化妝的依賴。然後你通常有一個'乾淨'的規則如下:
clean: gitignoreremove
rm *.o *.othergarbagefiles $(name)
這應該有所斬斷。這是一種黑客攻擊,但它對我很有用。唯一的是你必須在更改名稱之前運行make clean以自動清理所有內容。
你不能忽略基於模式(權限)的文件,但Jefromi說你可以忽略所有文件,但那些有擴展名的文件。 –