vue项目中使用npm run build打包后会生成一个dist文件,使用git推送项目后,发现git上少了一个dist文件,为什么明明本地项目中有这个文件而推上去就没有了呢?...比如我们项目中的npm包(node_modules),它在我们项目中是很重要的,但是它占的内存也是很大的,所以一般我们用Git管理的时候是不需要添加npm包的。...根目录下创建gitignore.txt; 编辑gitignore.txt,写下你的规则,例如加上node_modules/; 打开命令行窗口,切换到根目录(可以直接在文件夹上面的地址栏输入cmd回车)...**npm-debug.log:**项目主目录下总是会出现这个文件,而且不止一个,原因是npm i 的时候,如果报错,就会增加一个此文件来显示报错信息,npm install的时候则不会出现。...最后需要强调的一点是,如果你不慎在创建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。
下载依赖:从 npm 的注册服务器下载必要的包,并存储在 node_modules 文件夹中。完成后处理:包括生成或更新 package-lock.json 文件,以及运行任何必要的安装脚本。...基于以上步骤,node_modules 的创建和填充发生在第 2 步。在正常情况下,node_modules 应该在安装完成后保持其内容,但如果你发现它自动消失,这种行为通常与某些异常情况有关。...如果你的项目包含类似的脚本,node_modules 的消失是预期的结果。排查方法:检查 package.json 中的 scripts 部分是否有可疑的清理命令。...例如:权限不足:npm 在安装过程中需要对 node_modules 目录写入文件,如果权限不足可能导致安装失败。...gitignore 或版本控制干预node_modules 文件夹通常被包含在 .gitignore 文件中,以避免在版本控制中提交冗长的依赖文件。
如果对这个还不了解,建议您先去网上查一下资料再来阅读下面的内容哦~~~ 准备工作 如果我们想要把自己的代码放在npm,供别人下载使用,首先得先有源码啊。...另外,如果想要在npm发布源码,还得需要在npm上注册一个账号,这个没啥好说的,就和github一样。...然后再在终端里输入 npm publish 等他发布完就ok啦~ 添加忽略文件 和 .gitignore 一样,我们在发布的时候,不想把所有的文件都发布,有些文件是不需要发布的,这个时候就需要在项目的根目录下面创建一个文件...我的文件内容如下: .DS_Store node_modules /dist /public /src /lib/*.map babel.config.js .gitignore README.md package-lock.json...完成 到这里就完成了对项目的发布,当我们使用命令: npm install xxxx 添加依赖的时候,项目就会从 npm 上下载下来放进项目的 node_modules目录中哦。
如果对这还不了解,建议您先去网上查一下资料再来阅读下面的内容哦~~~ 03 准备工作 如果我们想要把自己的代码放在npm,供别人下载使用,首先得先有源码呀 在开发 vue-admin-work的时候...其次就是要在 npm 网站上注册一个账号 点击 sign up按钮一步步注册账号就好。...然后再在终端里输入 npm publish 等他发布完就ok啦~ 05 添加忽略文件 和 githu中的 .gitignore 一样,我们在发布的时候,不想把所有的文件都发布,有些文件是不需要发布的,...我的文件内容如下: .DS_Store node_modules /dist /public /src /lib/*.map babel.config.js .gitignore README.md package-lock.json...06 写在最后 到这里就完成了对项目的发布,当我们使用命令: npm install xxxx 添加依赖的时候,项目就会从 npm 上下载下来放进项目的 node_modules目录中哦。
这就是为什么你可能不想使用git add .命令将当前git目录中的每一个文件进行升级。 当你使用git commit命令时,每个文件都会被提交——这也包括不需要或不应该提交的文件。....gitignore文件是一个纯文本文件,它包含来自项目的所有指定文件和文件夹的列表,Git应该忽略和不跟踪这些文件和文件夹。...要从命令行查看所有文件,包括隐藏文件,使用-a标志和ls命令,如下所示: ls -a 你应该考虑添加到.gitignore文件中的文件类型是不需要提交的任何文件。...从项目中使用的编程语言或框架自动生成的文件,以及编译后的特定于代码的文件,如.o文件。 包管理器生成的文件夹,比如npm的node_modules文件夹。...要忽略一个完整的目录及其所有内容,你需要在目录名的最后加上斜杠/: test/ 该命令将忽略位于项目中任何位置的名为test的目录(包括该目录中的其他文件和其他子目录)。
Bash 是按照下一的步骤来完成的:检查命令是否包含斜杠。如果没有,首先检查函数列表是否包含一个我们寻找的命令。如果命令不是一个函数,那么在内建命令列表中检查。...通常如果我们要在 Linux 中执行自定义脚本,那么我们需要通过路径的形式来执行相应的文件,如果我们在 PATH 里的目录中注册了相应的指令或者通过 alias 对这个路径起了别名的话,就不需要输入完整路径...这样写的目的是为了使该文件以可执行程序去运行的时候可以找到相应的解释器,当然如果将文件所在位置作为参数传递给解释器来执行的话,则不需要在自定义脚本的第一行添加上述代码(写了也没用),例如: /bin/bash.../usr/bin/env 是一种可移植指定解释器的方式:简而言之,它表示:执行 ,无论你(第一次)在 $PATH 变量中列出的目录中找到它...2.4 lib 源码所在位置,你可以根据需求自定义相关的文件结构,但是这里需要注意一点的是,如果你需要暴露 API 给外部使用,那么一定要和 package.json 中的 main 字段建立好联系。
斜杠开头模式相对于.gitignore所在的目录。如果模式以斜杠开头,则仅从仓库的根目录中开始匹配文件和目录。如果模式不是以斜杠开头,则它将匹配任何目录或子目录中的文件和目录。...要忽略先前提交的文件,你需要取消暂存并从索引中删除该文件,然后在.gitignore中添加该文件模式: git rm --cached filename --cached选项告诉git不要从工作树中删除文件...,而只是从索引中删除它。...要递归删除目录,请使用-r选项: git rm --cached filename 如果要从索引和本地文件系统中删除文件,请忽略--cached选项。...该文件包含用于描述应忽略的特定文件和目录的模式。gitignore.io是一种在线服务,可让你为操作系统,编程语言或IDE生成.gitignore文件。如果你有任何问题或反馈,请随时发表评论。
接下来,本文将针对 npm 中的你可能忽略的细节和大家分享一些经验。 npm 安装机制 A 和 B 同时依赖 C,C 这个包会被安装在哪里呢?C 的版本相同和版本不同时安装会有什么差异呢?.../node_modules 下的目录将会包含三个子目录: node_modules/ ├─┬ A ├─┬ B ├─┬ C 为什么会出现这样的区别呢?.../node_modules 这层目录中包含有我们 package.json 文件中所有的依赖包,而这些依赖包的子依赖包都安装在了自己的 node_modules 中 ,形成类似于下面的依赖树: 这样的目录有较为明显的好处...为什么会出现 package-lock.json 呢? 为什么会有 package-lock.json 文件呢?这个我们就要先从 package.json 文件说起了。...在 npm 2 中,当我们下载 ant-design@3.x 时,peerDependencies 中指定的依赖会随着 ant-design@3.x 一起被强制安装,所以我们不需要在宿主项目的 package.json
,为什么已经出现如此之久的 npm 还会有重复造轮子的包管理呢?...它确立了如今包管理的核心,在前端包管理工具相当于是一种标准了。 如今 npm 已经存在 12 年了,为什么还有其他替代品?...这个方式导致你的 node_modules 文件夹里面的依赖包都将存储在 ~/.pnpm-store/ 下。每个依赖包的版本在该文件夹中只存储一次,构成唯一来源,这样的话将会节省相当多的磁盘空间。...这是通过 node_modules 层实现的,使用符号链接创建一个嵌套的依赖关系结构,其中文件夹中的每个包都是到存储的硬链接。 这是为什么 pnpm 会在快速和磁盘效率上有大幅提升的原因。...那么所有的次级依赖去哪里了呢?就在 .pnpm 的文件夹里面,我们打开后可以看到所有的依赖(包括依赖的依赖)都在 .pnpm 文件夹内,所以 react 是唯一一个你的应用必须拥有访问权限的包。
指令编译多次,适用于开发过程中的编译。.scss文件的改动会被检测(watch)并立即编译写入相应的.css文件中。...所有的代码需要从src拷贝到disk,如果需要翻译,就中途翻译(sass,babel),不需要翻译就直接拷贝。...git上传忽略node_modules 1、在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录。...2、输入 touch .gitignore ,生成“.gitignore”文件。 3、在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了。...(注意格式) 例如: node_modules/ dist/ npm-debug.log ---- 作者:懂懂kkw 一般要忽略node_modules和dist,只上传源文件,然后运行命令
借此思考下人生戳这里先洗下脑 [BetterExplained]为什么你应该(从现在开始就)写博客 使用Hexo+GitHub Pages搭建属于自己的博客 依赖 安装Node.js 安装git...install hexo-cli -g 安装hexo包到全局node_modules中,修改package.json文件,将模块名和版本号添加到dependencies部分 npm install hexo...–save 2.初始化hexo 这里需要新建个目录用于存放本地的博客文件 往后的命令均需要在此目录下执行,可用cd命令进入目录中执行往后的命令 image.png hexo init # 初始化目录...,生成相关文件 目录中生成的文件如下 . ├── node_modules # 存放博客依赖的npm packages ├── scaffolds # 存放生成博客文章、博客页面...├── .gitignore ├── package.json # 记录当前目录下实际安装的各个npm package的具体来源和版本号 └── package-lock.json
打开Node.js 官网 image.png 选择下载稳定版(LTS):12.18.3 下载并安装完成后验证是否安装好了的方法 打开终端 image.png 输入 node -v 和 npm -v 如果出现版本号...GitHub 的 release 进行下载所以速度较慢 国内用户可以使用:淘宝镜像源进行下载,最新版本需要翻到最底下进行下载 安装好后在桌面单击右键,如果右键菜单出现 Git Bash Here 的字眼则代表安装成功...init 来初始化 Hexo,此步骤会从 GitHub 下载 Hexo 的主题、依赖文件所以时间会比较久,请耐心等待哦 o( ̄ ▽  ̄)ブ如果你有条件就访问外国网站吧~ 当提示 INFO Start blogging...时就安装完成了 查看安装的文件夹 发现有这些文件/文件夹: node_modules scaffolds source themes .gitignore _config.yml package.json...package-lock.json 其中 node_modules 是你安装的插件存放位置,删掉了必须重新 npm i scaffolds 是你博客的模板存储位置,page.md 就是创建 page
这是一个事实,它摆脱了典型的"它在我的机器上可以工作"的问题,除此之外,还有其他一些好处: 让团队成员之间的开发工作流程更加标准化 如果你也使用 Docker 进行部署,则减少了针对生产环境的 bug(...文件的语法与 .gitignore 文件完全相同。...# Git .git .gitignore # Docker Dockerfile docker-compose.yml # NPM dependencies node_modules 最后同样重要的是我们需要定义一个...在我们的例子中,我们希望它使用当前目录下的 Dockerfile,这就是为什么我们把.作为一个参数,因为这定义了当前的目录。...reserved: 这是一个特殊的卷,如果本地的 node_modules 文件夹存在,则不会覆盖容器内部的 node_modules 文件夹。
如果想了解一个功能全备的前端项目都有啥,可以参考之前的文章前端项目里都有啥? npm init 选择你认为合适的目录(这里我们直接使用demo目录)。...对系统和其他程序没有影响,可以安全删除,但会丢失文件夹的自定义设置。 该文件不参与版本控制,通常会在 .gitignore 文件中忽略。...这个文件可以帮助你在项目级别或全局级别上自定义NPM的行为,使得NPM命令在执行时按照你的配置进行操作。.npmrc文件采用INI格式[3],其中包含了一系列的键值对,用于配置NPM的各种选项。...上面提示我们需要在CI中配置GITLAB_TOKEN。...那么,我们就需要在我们项目中指定当遇到@front789/demo时候,我们需要从哪里去寻找。这就需要用到.npmrc了。 其实在gitlab的Package Registry中已经给我们提示了。
这篇文章要求你有一定的 JS 、TS 和 NPM 的知识,如果你写过普通的 NPM 包就更好啦~如果没有的话网上也很多教程的,都很简单~ 发布过 npm 包的同学都知道,初始化一个 npm 项目,直接用...npm init -y 就可以了,那如果要用 ts 呢,直接 tsc --init 即可。...这里的 .d.ts 文件和 main 入口指向的是一个文件夹,所以通常情况下,你的 package.json 会包含下面两行: "main": "dist/index.js", "types": "dist...保证你的 dist 目录被添加到了 .gitignore 在我们的代码仓库,一般不需要包含编译后的代码,只需要包含源码即可。所以我们不对 dist 目录做版本管理。...配合 commitizen 来发布 npm 包,感兴趣的同学可以自行了解一下~ 如果想要在发布前调试本地包,可以使用 npm link 命令,在此项目根目录执行npm link, 然后在要调试的 demo
这个项目名为 github1s,它的使用方法非常简单,只需要在浏览器地址栏 GitHub 网址链接中的「github 」后面添加 1s ,然后 Enter 键,即可在 VS Code 界面访问该项目的...只需在模板或CSS/SCSS中声明类,然后在任何地方都可以看到它。...", "dist"] } Search node_modules VS Code的简单插件,可让您快速浏览项目node_modules目录中的文件。...可能是您node_modules从VS Code的内置搜索中排除了该文件夹,这意味着如果您想在其中打开和/或编辑文件node_modules,则必须手动找到它,当node_modules文件夹很大时,这可能会很烦人...取消注释当前文档中由扩展名插入的所有日志消息的全部操作是按alt + shift + u 从当前文档中删除所有由扩展名插入的日志消息 要从当前文档中删除所有由扩展名插入的日志消息,只需按alt + shift
简介 从 GitLab 8.0 开始,GitLab CI 就已经集成在 GitLab 中,我们只要在项目中添加一个 .gitlab-ci.yml 文件,然后添加一个 Runner,即可进行持续集成。...job 里面的 script 关键字是最关键的地方了,也是每个 job 中必须要包含的,它表示每个 job 要执行的命令。...每个 Job 开始的时候,Runner 都会删掉 .gitignore 里面的文件。...如果有些文件 (如 node_modules/) 需要多个 Jobs 共用的话,我们只能让每个 Job 都先执行一遍 npm install。 这样很不方便,因此我们需要对这些文件进行缓存。...当该 Job 运行成功后,生成的文件可以作为附件 (如生成的二进制文件) 保留下来,打包发送到 GitLab,之后我们可以在 GitLab 的项目页面下下载该附件。
npm 和 Yarn都能够通过包锁定功能确保安装的包的版本。 但是,在锁定包版本之后,如果需要在项目中更新某些包,则需要手动更新明确的包版本。...如果你喜欢 npm 并且没有太多的依赖,那么使用 npm 可能比较合适。 如果你需要更快的速度和更好的安全,那么使用 Yarn 可能更好。...而如果你需要节省磁盘空间并缩短安装时间,则 pnpm 也是一个很好的选择。...npm 在安装依赖时会一次性将所有包下载到本地的 node_modules 目录中, 因此在 node_modules 中会出现很多重复的包。...如果多个项目都使用相同的依赖项,则 pnpm 仅下载一次该依赖项, 并在 node_modules 目录中创建符号链接以便在多个项目之间共享。
React Native项目; 通过npm安装react-native的方式添加一个React Native项目 第一步:创建一个名为RNHybrid的目录,然后在该目录下添加一个包含如下信息的package.json....gitignore文件中; 通过react-native init来初始化一个React Native项目 除了上述方式之外,我们也可以通过react-native init命令来初始化一个React...文件(如果已经添加过可跳过): pod install 然后,我们在Podfile文件中添加如下代码: # Uncomment the next line to define a global platform...如果:出现 Unable to find a specification for 'boost-for-react-native' depended upon by Folly 的错误,则需要在目录下执行...打包 虽让,通过上述步骤,我们将RN和我们的RNHybridiOS项目做了融合,但打包RNHybridiOS你会发现里面并不包含JS部分的代码,如果要将JS代码打包进iOS ipa包中,可以通过如下命令
这听起来不错,那我为什么要说这一点呢? 问题在于,create-react-app抽象出了很多概念,在创建时它们并不会提示,你也不需要手动调整,这使得你并不完全清楚React完成了什么工作。....gitignore文件并在其中(至少)排除掉node_modules和dist目录。...下面让我们在工程目录下创建配置文件webpack.config.js。这个文件将导出一个包含Webpack配置的对象。...实例中的配置将匹配除了node_modules以及bower_components目录之外所有的js,jsx文件,我们还需要指定Webpack去使用Babel,在最后我们还要在options中指定presets...如果你想保存构建的文件,你可以在package.json文件中配置build命令为webpack --mode development,你也可以将development替换为production,但是如果你省略了
领取专属 10元无门槛券
手把手带您无忧上云