git,忽略具有 Laravel 模式的文件
git, ignore files with a pattern in Laravel
我有这个 .gitignore 文件:
/node_modules
/public/storage
/public/hot
/storage/*.key
/vendor
.idea
Homestead.json
Homestead.yaml
.DS_Store
Thumbs.db
*.sublime-project
*.sublime-workspace
.project
/nbproject
_ide_helper.php
composer.phar
error.log
Todo.rtf
.vagrant
/.vagrant
npm-debug.log
.env
/public/css/backend.css
/public/css/frontend.css
/public/js/backend.js
/public/js/frontend.js
/public/mix-manifest.json
/public/mix.js
现在我忽略了最后几行(从 /public/...
开始),但它们是特定文件。在我的项目中,我有很多编译文件,例如:
/public/css/backend.345346n345jkn3454.css
/public/css/frontend.679nkj67n9n79n679.css
/public/js/backend.2345b34j5bn345m34..js
/public/js/frontend.234234234n234f.js
/public/mix-manifest.json
/public/mix.9b87a1da741f957f3f09.js
等等...所以我想包括名称开头包含 "backend"、"frontend" 和 "mix" 文本的所有文件。可以这样做吗?:
/public/css/backend*.css
/public/css/frontend*.css
/public/js/backend*.js
/public/js/frontend*.js
/public/mix*.js
我这样做了,但它不起作用,所以我不知道该怎么做。
编辑:这个问题不是关于忽略存储库中已经提交的文件。我想知道通配符在我的具体情况下的使用。
是的。你可以在你.gitignore
中使用这个语法。不过,您可能试图忽略已经提交的内容。
要取消跟踪已经 added/initialized 到您的存储库的 单个 文件,即 ,停止跟踪该文件但不要从您的系统中删除它使用:git rm --cached filename
取消跟踪 现在在您 .gitignore
中的每个 文件:
首先提交任何未完成的代码更改,然后,运行此命令:
git rm -r --cached .
这会从 index(暂存区)中删除任何更改的文件,然后只是 运行:
git add .
提交:
git commit -m ".gitignore is now working"
要撤消 git rm --cached filename
,请使用 git add filename
。
你可以阅读更多here, and here。
我有这个 .gitignore 文件:
/node_modules
/public/storage
/public/hot
/storage/*.key
/vendor
.idea
Homestead.json
Homestead.yaml
.DS_Store
Thumbs.db
*.sublime-project
*.sublime-workspace
.project
/nbproject
_ide_helper.php
composer.phar
error.log
Todo.rtf
.vagrant
/.vagrant
npm-debug.log
.env
/public/css/backend.css
/public/css/frontend.css
/public/js/backend.js
/public/js/frontend.js
/public/mix-manifest.json
/public/mix.js
现在我忽略了最后几行(从 /public/...
开始),但它们是特定文件。在我的项目中,我有很多编译文件,例如:
/public/css/backend.345346n345jkn3454.css
/public/css/frontend.679nkj67n9n79n679.css
/public/js/backend.2345b34j5bn345m34..js
/public/js/frontend.234234234n234f.js
/public/mix-manifest.json
/public/mix.9b87a1da741f957f3f09.js
等等...所以我想包括名称开头包含 "backend"、"frontend" 和 "mix" 文本的所有文件。可以这样做吗?:
/public/css/backend*.css
/public/css/frontend*.css
/public/js/backend*.js
/public/js/frontend*.js
/public/mix*.js
我这样做了,但它不起作用,所以我不知道该怎么做。
编辑:这个问题不是关于忽略存储库中已经提交的文件。我想知道通配符在我的具体情况下的使用。
是的。你可以在你.gitignore
中使用这个语法。不过,您可能试图忽略已经提交的内容。
要取消跟踪已经 added/initialized 到您的存储库的 单个 文件,即 ,停止跟踪该文件但不要从您的系统中删除它使用:git rm --cached filename
取消跟踪 现在在您 .gitignore
中的每个 文件:
首先提交任何未完成的代码更改,然后,运行此命令:
git rm -r --cached .
这会从 index(暂存区)中删除任何更改的文件,然后只是 运行:
git add .
提交:
git commit -m ".gitignore is now working"
要撤消 git rm --cached filename
,请使用 git add filename
。
你可以阅读更多here, and here。