对于我的代码存储库,假设它叫做top
top\
.gitignore
foo\
bar\
我希望CtrlP列出满足以下两个条件的文件:
- 位于
foo\
下 - 不被
top\
目录中定义的.gitignore
忽略
如果我在top\foo\
路径下打开vim,则1满足但2不满足。
如果我在top\
路径下打开vim,则2满足但1不满足。
我应该如何同时满足1和2?
我尝试使用这个gitignore vim脚本,但只有在我在一个repo的根目录中打开vim时它才会解析gitignore
,因此我无法同时实现1和2。
对于let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'
,ag
不会尝试到repo根目录中读取gitignore
。
将g:ctrlp_working_path_mode
设置为r
,可以让CtrlP遵循顶级目录中的.gitignore
,但是它会列出top\
目录下的所有文件,而我只想要foo\
下的文件。
谢谢。
CtrlP foo
怎么样? - romainl.gitignore
文件,但也会丢失未跟踪的文件。对于未跟踪的文件,我只需使用git add
命令,它们就会变为已跟踪状态,然后CtrlP就可以找到它们了。 - Sukima