我可以从Sencha CMD生成的应用程序中安全删除什么内容?

时间:2016-05-20 07:59:41

标签: extjs sencha-cmd extjs6

我刚刚使用-ext -classic选项生成了Sencha CMD的新ExtJS 6应用程序,我在myapp / ext目录中有很多文件,包括一些示例,在myapp / ext / build中包含示例的构建框架和其他我不希望置于源代码管理之下的文件。

我可以从myapp / ext中安全删除吗?

3 个答案:

答案 0 :(得分:0)

myapp/ext/build中的文件是从未编译版本引用的,因此请勿删除它们。

你至少应该保持

  • build目录中的所有内容(未编译版本所需)
  • classic/classic文件夹中,子文件夹overridessasssrc(未编译和已编译都需要)
  • 你的主题和父主题以及父母的父主题(例如,海王星衍生自海王星的triton是从中性派生的,所以你必须保留这四个!)
  • 至少packages/core,对于某些主题packages/font-*,如果您使用ux组件,packages/ux文件夹也
  • 编译时也需要sass目录。

那你可以删除什么?

  • 事实上,只有那些您不想使用的主题和包(例如classiccharts)才能安全删除。除非你(或你的老板)下定决心,否则......

简而言之,我不会删除任何内容。我自己没有,我只是从源代码管理中删除了整个ext文件夹。

答案 1 :(得分:0)

您可以在执行源代码管理中的签入时排除build和ext文件夹。当你必须结账时,创建一个新的应用程序构建并用源控制文件替换文件。

答案 2 :(得分:0)

我使用的策略是拥有ext文件夹,它基本上就是整个框架 - 大约12K文件 - 源控件中的 和我的Web应用程序中的

源代码控制说明: -

我知道在源代码管理中使用ext文件夹会降低结帐流程,但这通常只会一次。因为一旦你签出了代码,即使你将代码切换到另一个分支,它也不需要再次下载整个ext文件夹,因为那个ext文件夹几乎没有任何变化,因为它是一种库该项目。因此,源控制中的切换,合并不会受到影响。

将其置于战争文件说明中

我把它放在我的webapp中的原因是允许从目标文件夹运行sencha app watch命令,以便它立即获取scss和sass更改。要使这些监视和构建命令正确执行,它需要在应用程序中有ext文件夹 - 我没有找到一种方法来外化它。现在这种方法的问题在于,当部署war文件并在deploy文件夹中提取war内容时,它会复制整个ext文件夹,因此部署时间大大增加。每次我们清理和重新部署应用程序时,它都不一定会删除整个ext文件夹(在清理操作时),然后再次复制文件(在部署操作时)。为了避免这种不必要的删除和重新复制,我维护了2个开发配置文件 - 一个包含用于清理和构建目的的ext文件夹,另一个用于排除ext文件夹。第一次开发人员只需要包含用于部署的ext文件夹的配置文件。但每次以后,我只使用从清除和部署过程中排除ext文件夹的配置文件,以便整个部署过程不受影响。

我知道整个事情设置起来很复杂,但一旦到位,它就会让生活变得更加简单。是的,如果有人能够找到一种方法来外化ext文件夹并仍然允许sencha app watch命令按原样运行,那么请在这里发布他们的答案,以便每个人都受益。