git 打包和忽略文件的使用

一、git打包

采取其他打包工具将整个工作区打包,会把版本库等一些其他不必要的信息打包,git提供了一个打包命令

#基于最新的提交进行打包 
git archive -o new.zip HEAD

#基于tag进行打包,发布源码
git archive --format=tar --prefix=1.0/ v1.0 | gzip > test-1.0.tar.gz

二、git文件忽略

整个文章参考了《git权威指南》 对于不想提交到版本库中的文件或者目录,git提供了文件忽略的功能

1、全局式“独享式”忽略

与之对应,就是版本库传递的时候,也会出现在他人的工作区,并同时生效

touch .gitignore git add .gitignore git commit -m "add .gitignore" 
Git忽略语法: 
1、以#开始的行会被忽略
2、可以使用多种通配符
3、如果名称的最前面是一个路径分隔符(/),表明要忽略的文件在此目录下,而非子目录的文件
4、如果名称的最后面是一个路径分隔符(/),表明忽略的是整个目录,同名文件不忽略,否则同名的文件和目录都忽略
5、通过在名称的最前面添加一个感叹号(!),代表不忽略

举例:
*.a #忽略所有 .a 结尾的文件
!lib.a #但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
  • .gitignore可以放在任何目录中
  • 忽略只能针对未跟踪文件有效,对于已经加入版本库的文件无效
  • 当一个早期的gitignore文件已经commit了之后,那么修改了gitignore文件之后,需要重新清下缓存,命令:git rm -r --cached ignore_file

2、本地“独享式”忽略

这种忽略,在版本库传递的时候,比如克隆的时候,不会因为出现在他人的工作区导致忽略他人工作区中的文件

git config --global core.excludesfile ./.gitignore 
\\这个文件可以存放在任何位置


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Angular项目中,您可以使用.gitignore文件来指定要忽略文件文件夹,以便它们不会被提交到Git存储库中。以下是一些常见的Angular项目中需要忽略文件文件夹: - node_modules/:这是所有依赖项的文件夹,通常很大,不需要提交到Git。 - dist/:这是生成的构建文件夹,也不需要提交到Git。 - *.log:日志文件通常会很大,不需要提交到Git。 - /src/environments/environment.ts:这是包含环境变量的文件,通常与开发环境相关,不需要提交到Git。 您可以在项目根目录下创建一个名为.gitignore的文件,并列出要忽略文件文件夹。例如,以下是一个典型的Angular项目的.gitignore文件: ``` # dependencies node_modules/ dist/ # logs and databases *.log *.sqlite # environment files /src/environments/environment.ts ``` 请注意,您可能需要根据您的项目情况进行调整。 ### 回答2: 在Angular项目中,我们可以通过.gitignore文件来指定哪些文件文件夹应该被Git忽略,从而不会被提交到版本库中。 首先,在Angular项目的根目录下创建一个名为.gitignore的文件,如果已经存在可以直接编辑该文件。 接下来,我们可以在.gitignore文件中添加需忽略文件文件夹列表。这些文件文件夹将不会被Git跟踪和提交。一般来说,可以忽略一些与构建、依赖和配置相关的文件。 下面是一个示例的.gitignore文件: ``` # 忽略dist文件夹 /dist/ # 忽略node_modules文件夹 /node_modules/ # 忽略一些构建和配置文件 /*.js.map /*.js /*.d.ts /.angular.json /package-lock.json ``` 在上述示例中,我们忽略了dist和node_modules文件夹,以及一些与构建和配置相关的文件。这样,当我们执行git提交命令时,这些被忽略文件将不会被包含在提交中。 需要注意的是,已经被Git跟踪的文件需要先从Git中移除才能被忽略。可以使用以下命令来移除已经被Git跟踪的文件: ``` git rm --cached <文件文件夹路径> ``` 在执行上述命令后,修改已保存的.gitignore文件,并重新提交。此时,被移除的文件将不再被Git跟踪,并且在之后的提交中也不会被包含。 通过使用.gitignore文件来指定需忽略文件文件夹,我们可以有效地管理项目中不需要被Git跟踪和提交的文件,并确保版本库中只包含必要的文件。 ### 回答3: 在Angular项目中,我们可以使用.gitignore文件来告诉Git忽略某些文件文件夹的提交。下面是一些常见的在Angular项目中需要忽略文件文件夹。 1. 节点依赖:在Angular项目中,我们通常使用npm或者yarn来管理项目的依赖关系。这些依赖项通常存储在node_modules文件夹中,由于这个文件夹通常非常庞大且包含了大量的第三方代码,所以我们可以选择将其加入到.gitignore文件中。 2. 构建输出:当我们在Angular项目中运行构建命令时,会生成一些构建产物,例如编译后的JavaScript文件或者打包后的应用程序。这些文件通常存储在dist文件夹中,我们可以将其忽略以减少提交的文件数量。 3. IDE生成的文件文件夹:不同的集成开发环境(IDE)可能会生成一些额外的文件文件夹,用于配置或者项目管理。例如,VSCode会生成一个.settings文件夹以保存项目的设置。我们可以根据自己使用的IDE,将这些文件文件夹加入到.gitignore文件中。 4. 日志文件:一些应用程序或插件可能会生成日志文件,用于调试或错误报告。由于这些日志文件通常会不断增长,并且可能包含敏感信息,所以我们可以选择将它们加入到.gitignore文件中。 可以在Angular项目的根目录下创建一个名为.gitignore的文件,并在其中列出需要忽略文件文件夹,可以使用通配符来进行模糊匹配。当我们进行git提交时,Git会自动忽略这些文件文件夹。需要注意的是,已经提交到git仓库中的文件,即使在.gitignore中忽略,也不会被回退删除,需要手动删除或使用git命令进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值