我知道有很多这样的问题,但没有人解决我的问题.我想要一些非常简单的东西 - 忽略特定文件夹下的所有文件和文件夹,除了一个文 这是我尝试的:
#Ignore
public/typings/*
#Allow
!public/typings/browser/ambient/jquery/jquery.d.ts
Run Code Online (Sandbox Code Playgroud)
...但文件仍被忽略.
有什么建议?
WinXP + mysisGit1.7
在我的.gitignore文件中,但仍然看不到Demos/path/to/file/file.cpp被git跟踪.
我有以下条目:
Demos/
!Demos/path/to/file/file.cpp
Run Code Online (Sandbox Code Playgroud)
绝对路径是: c:\Project\Demos\path\to\file\file.cpp
可能有什么不对?请帮忙,谢谢.
编辑:
我发现mysisGit .gitignore在WindowsXP上工作的方式只能忽略某些类型的文件,然后排除一些相同类型的文件.例如:
*.bak
!tracking.bak
!/path/to/file/tracking2.bak
Run Code Online (Sandbox Code Playgroud)
它不起作用忽略文件夹并排除该文件夹下的一些文件.以下不起作用:
/folderUnderRepoRoot/
!/folderUnderRepoRoot/tracking.cpp
Run Code Online (Sandbox Code Playgroud)
也不
anyFolderNamedLikeThis/
!anyFolderNamedLikeThis/tracking.cpp
!/anyFolderNamedLikeThis/tracking.cpp
Run Code Online (Sandbox Code Playgroud)
但是,我发现有一个例外.有一种解决方法可以将文件排除在被忽略的文件夹下(而不是它的子文件夹下).这有效.
/folderUnderRepoRoot/*
/folderUnderRepoRoot/tracking.cpp
Run Code Online (Sandbox Code Playgroud)
但是这种方式仅在文件不在任何子文件夹中时受到限制,因此它没那么有用.
所以我最终仍然提交了大部分源文件,即使我只对一些文件感兴趣,同时跟踪其他一些大项目.这意味着有一堆文件我不会碰,但仍然需要提交它们.
我搜索了其他问题,但无法为我的项目找到有效的解决方案.有一个Magento项目,我想排除除此之外的所有内容:
/app/design/frontend/default/theme_name # and obviously all subfolders
/skin/frontend/default/theme_name # and all subfolders
Run Code Online (Sandbox Code Playgroud)
我尝试了很多组合,但没有运气.目前我坚持使用这个.gitignore文件:
*
!/app/
!/app/*
app/*
!/app/design/
!/app/design/*
Run Code Online (Sandbox Code Playgroud)
但它在设计文件夹下面递归不起作用.它只在我创建的设计文件夹中添加了一个测试文件.