我想为我的Magento项目创建存储库。根目录中有很多文件夹和文件,我只更改一个文件夹的时间:app / code / local /
我想忽略的其他一切。但是......不能。我的.gitignore文件:
*
!app/code/local/
!app/code/local/*
然后,当我尝试将文件夹添加到repo时,我收到错误:
git add app/code/local/Mds/
The following paths are ignored by one of your .gitignore files:
app
Use -f if you really want to add them.
fatal: no files added
有人可以帮忙吗?
答案 0 :(得分:17)
根据您的需要尝试以下内容:
/*
!/app/
/app/*
!/app/code/
/app/code/*
!/app/code/local/
以下讨论很有帮助:http://git.661346.n2.nabble.com/negated-list-in-gitignore-no-fun-td1675067.html,尤其是来自Linus的以下内容:
That's by design. You've chosen to ignore those directories; they match "*"
themselves. Thus, 'git add .' doesn't descend into them looking for files.
所以基本上,对于你必须进入的每个级别,取消该文件夹的内容,并忽略该文件夹中的内容。
答案 1 :(得分:0)
这个.gitignore是在repo的根目录吗?
试试这个:
/*
!/app/code/local
答案 2 :(得分:0)
“如果排除该文件的父目录,则无法重新包含文件。”
例如,如果您已经使用存储库并告诉Git忽略父目录,进行了一些提交,然后返回并尝试允许排除目录的某个子目录,则不会包含子目录即使您的.gitignore
文件正确。要解决这个问题,您需要强制添加它(使用-f
标志):
git add -f {file}
完成此操作后,将跟踪后续更改。