2012-02-23 39 views
1

我想用這種方式如何跟蹤子目錄中的某些文件,但不是所有其他文件與Git?

# Ignore everything 
* 
# But not these files... 
!.gitignore 
!/projectA/Makefile 
!/projectB/Makefile 

原來的Git無法跟蹤的Makefile文件的projectAprojectB子目錄跟蹤文件。一種解決方案是在子目錄中創建.gitignore文件,但我不喜歡它,因爲我必須手動創建許多不同的.gitignore文件。任何想法如何做到這一點在git根目錄的.gitignore

回答

3

你可以做這樣的事情:

  1. 你需要跟蹤,以便跟蹤Makefile文件的文件夾
  2. 的文件夾,但我們不希望跟蹤的東西文件夾
  3. 除了Makefile

把這些碎片拼湊起來在你的.gitignore讓這些三線

!/了projectA/
/了projectA/*
!/了projectA/Makefile中

這是一個有點冗長,但我不知道更短的方法。

+0

它似乎不工作。當我運行'git status'時,它將'projectA /'報告爲untracked而不是'projectA/Makefile' – RNA 2012-02-23 03:21:00

+0

您只能看到文件夾的原因是您需要跟蹤文件夾才能跟蹤該文件夾中的任何內容。做'git add projectA',你只會在該文件夾中放置Makefile。 – Andy 2012-02-23 03:24:12

+0

@ RNAer,改爲使用'git status --ignored --untracked-files = all'。 – Alexander 2012-02-23 03:26:24

相關問題