在这篇博文中,我们将学习angular项目中不提交的文件。
.gitignore是一个包含文件/文件夹路径列表的纯文本文件,这意味着在提交项目时,这些文件不会被提交到版本库。
这些文件被放置在版本库的根目录下。然而,你可以在你的应用程序的任何子文件夹中定义。
这些文件可以用任何编辑器修改/创建--vscode、sublime、atom或任何普通编辑器。
gitignore文件用于维护未被跟踪的文件,这在git提交过程中是很有用的,可以忽略这些文件,如果在gitignore文件中加入每一行,就可以在提交文件时停止跟踪这些文件。angular项目可以手动生成,也可以使用angular CLI工具。
angular项目使用typecript。Typescript编译器或trans将组件堆积成JavaScript。在这个阶段,js和js.map文件被生成。这可以通过在gitignore文件中添加它而被忽略。
我们将看到angular cli项目的gitignore文件
在使用ng cli工具创建angular项目时,gitignore文件是默认创建的。
在angular cli项目中,哪些内容不能提交给git?
- Node_module dependencies文件夹,是项目和环境的本地文件,不需要提交到版本库中
- 像npm和yarn以及webpack一样的构建包日志文件
- 临时文件夹,如tmp
- 打字的文件夹
- npm命令执行的输出文件夹,如dist/output文件夹
- typecript编译器文件的输出文件
- 包含映射的JavaScript文件(如果有的话
- 特定环境的文件
- 排除package-lock.json文件
- bower_components,如果使用的软件包管理器是bower的话。
- 编辑器或IDE特定的文件,如Visual Studio代码编辑器的.vscode文件夹
- *.sublim-workspace文件,用于Sublime文本编辑器
- eclipse的.project和class路径文件
- Typecript生成的文件
- grunt特定的锁定文件
我们必须在gitignore文件中添加以下内容来忽略这些文件
# See http://help.github.com/ignore-files/ for more about ignoring files.
# compiled output
/dist
/tmp
/out-tsc
# dependencies
/node_modules
# IDEs and editors
/.idea
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace
# IDE - VSCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
# misc
/.sass-cache
/connect.lock
/coverage
/libpeerconnection.log
npm-debug.log
yarn-error.log
testem.log
/typings
# System Files
.DS_Store
Thumbs.db
需要记住的重要事项
- 不要在提交的文件中添加机密信息,即使是添加到gitignore文件中也不行。
- 在Windows中,这些文件默认是不可见的,因为这些文件被视为隐藏文件。
- 这些文件可以在项目的任何文件夹中出现,但建议放在根目录下。
根据项目需要,你可以在这个文件中添加/删除任何目录或文件。你必须使用正则表达式**来忽略一个目录内的子目录。