2017-09-06 92 views
3

我有一個.gitignore文件看起來像這樣:Git是忽略一個文件中的子目錄

* 
!/src 
!/resources 
!/.gitignore 
!/package.json 
!/tsconfig.json 
!/README.md 

我在src文件夾src/config/mongo.ts添加文件到子目錄。然而,當我嘗試添加文件時,它沒有得到補充說:

git add -A 

我試圖改變第二線以下每個:

!/src/ 
!/src/* 
!/src/**/* 

但是它仍然不添加文件。

我也曾嘗試直接添加文件:

git add src/config/mongo.ts 

但我得到以下信息:

以下路徑是由您的.gitignore文件中的一個被忽略: 的src /配置/mongo.ts

git status只顯示.gitignore文件已被更改。不知道該怎麼做才能做到這一點。

我想:

  • 首先排除一切*
  • 然後包括在src目錄一切(及其子目錄)
  • 然後包括在resources目錄(及其子目錄)一切
  • 然後包括列出的根文件
+0

你問不了的事,但也可能有幫助:https://stackoverflow.com/q/19023550/2988730 –

回答

3

這個人是一個棘手的一個嘗試這些線,帶我永遠搞清楚,當我最初跑了進去。

你只需要稍微軟化初步排除:

/* # instead of just * 
+0

就是這樣! 'git status'也可以找到2個其他文件 –

1

src文件夾及其子目錄被git忽略

如果你想添加特定的文件。嘗試

git add --force <file-path> 

或gitignore

/* 
!/src 
/src/* 
!/resources 
!/.gitignore 
!/package.json 
!/tsconfig.json 
!/README.md 
!/src/config 
+0

'git的add'已經ISN沒有工作,這是問題的關鍵。 –

+0

你嘗試強制加入? git add --force

+2

@AuuragMeena不強制任何東西,這是一個不好的做法。 –