chore(mp-harmony): 移除 ascf_build 下的构建产物 (rawfile + Index.ets)

背景:
  上一个 commit 把 ascf_build 整个目录的元数据纳入 git, 但误把
  每次构建都会变化的产物也入仓了:
    - rawfile/index.js: 每次 DevEco Build 重新生成 (含 webpack chunk id, hash 等)
    - rawfile/<root>/diy-*.pack.js: 同上
    - rawfile/<root>/placeholder/index.html + index.pack.js: 同上
    - Index.ets: 5 个包都是 0 字节空壳, 没有任何内容

  这些文件应该被 .gitignore 排除, 避免每次 DevEco Build 后 git
  status 都会报告 "modified", 污染 diff。

改动:
  1. .gitignore 改造
     - rawfile/** 整体 ignore (鸿蒙端每次 Build 重新生成)
     - Index.ets ignore (空壳, 0 字节)
     - 移除之前的 ! 兜底规则 (rawfile/**/placeholder/index.*,
       rawfile/index.js, base/element/*.json 等), 因为这些都
       已经在 rawfile/ 下被整体 ignore
  2. 从 git 历史删除 12 个误入的产物文件 (5 个 Index.ets +
     5 个 rawfile/index.js + 1 个 placeholder/index.html +
     1 个 placeholder/index.pack.js), 保留在工作树

仍然入 git 的 ascf_build 关键文件 (每次 commit 都更新):
  - oh-package.json5
  - build-profile.json5
  - hvigorfile.ts
  - obfuscation-rules.txt
  - src/main/module.json5
  - src/main/resources/base/element/string.json
This commit is contained in:
2026-07-30 14:36:14 +08:00
parent 6f0d6a9f59
commit d1c58f2ec8
13 changed files with 17 additions and 1943 deletions

42
.gitignore vendored
View File

@@ -20,18 +20,24 @@
stub-app-projects/mp-harmony/ascf/ascf_src
stub-app-projects/mp-harmony/entry/src/main/resources/rawfile
# ascf_build/<pkg>/ 是 HAR 包定义 (有源文件 + uniapp 编译产物)
# 策略: 不整体 ignore, 只精确 ignore 已知的产物路径
# - rawfile/<root>/diy-*.pack.js / *.html: uniapp 编译产物, vue.config.js 拷过来
# - rawfile/index.js: 也是产物 (HAR 入口脚本, 每次构建覆盖)
# - build/: hvigor 中间产物
# - oh_modules/: ohpm 同步产物
# - .preview/, .cxx/, .test/: 预览 / native 中间产物
# ascf_build/<pkg>/ 是 HAR 包定义
# 区分两类内容:
# 1. 必须入 git (元数据 / 构建配置 / HAR 入口):
# - oh-package.json5, build-profile.json5, hvigorfile.ts
# - obfuscation-rules.txt, src/main/module.json5
# - src/main/resources/base/element/string.json (HAR i18n)
# 2. 每次构建覆盖 (不应入 git):
# - src/main/resources/rawfile/** : 鸿蒙端从 ascf_src 同步的编译产物
# - Index.ets : 空壳文件, 无内容
# - build/, oh_modules/, .preview/, .cxx/, .test/, node_modules/
# 关键产物 (每次构建覆盖, 不应入仓)
stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/*.pack.js
stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/*.html
stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/*.json
# rawfile/ 整体 ignore (鸿蒙端每次 Build 重新生成)
stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**
# Index.ets 是空壳 (每个包都是 0 字节), 不入 git
stub-app-projects/mp-harmony/ascf/ascf_build/**/Index.ets
# 其他产物目录
stub-app-projects/mp-harmony/ascf/ascf_build/**/build
stub-app-projects/mp-harmony/ascf/ascf_build/**/oh_modules
stub-app-projects/mp-harmony/ascf/ascf_build/**/.preview
@@ -39,20 +45,6 @@ stub-app-projects/mp-harmony/ascf/ascf_build/**/.cxx
stub-app-projects/mp-harmony/ascf/ascf_build/**/.test
stub-app-projects/mp-harmony/ascf/ascf_build/**/node_modules
# 但 placeholder/ 下的 index.pack.js / index.html 是 HAR 必需, 保留
!stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/placeholder/index.pack.js
!stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/placeholder/index.html
!stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/placeholder/index.json
# 但根 rawfile/ 下的 index.js 是 HAR 入口, 保留
!stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/index.js
# base/element/string.json 是 HAR i18n, 保留
!stub-app-projects/mp-harmony/ascf/ascf_build/**/rawfile/**/base/element/*.json
# 但 rawfile/ 是 ignore **/*.json 的子目录, 上面那条也针对 rawfile/base/element 取消 ignore
# base/ 在 rawfile/ 之外, 单独处理
!stub-app-projects/mp-harmony/ascf/ascf_build/**/base/element/*.json
# entry 下的产物
stub-app-projects/mp-harmony/entry/build
stub-app-projects/mp-harmony/entry/oh_modules

View File

@@ -1,14 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0,minimum-scale=1.0, viewport-fit=cover" />
<link rel="stylesheet" href="assets://base.css" type="text/css" media="screen" charset="utf-8" />
</head>
<body>
<div id="holder"></div>
<script src='assets://renderer.js'></script>
<script type="text/javascript" src='/app.css.js'></script>
<script type="text/javascript" src="/components-diy/placeholder/index.pack.js" ></script>
</body>
</html>

View File

@@ -1,72 +0,0 @@
/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
/***/ "./components-diy/placeholder/index.css?type=page"
/*!********************************************************!*\
!*** ./components-diy/placeholder/index.css?type=page ***!
\********************************************************/
(module) {
eval("{module.exports = {\n segs:[\".placeholder.data-v-ddfc9ac4{padding:\",[2,40],\";color:#999;text-align:center;font-size:\",[2,24],\"}\"],\n info:{path:\"components-diy/placeholder/index\", type:\"page\"}\n }//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9jb21wb25lbnRzLWRpeS9wbGFjZWhvbGRlci9pbmRleC5jc3M/dHlwZT1wYWdlIiwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy1kaXkvcGxhY2Vob2xkZXIvaW5kZXguY3NzPzE5OTkiXSwic291cmNlc0NvbnRlbnQiOlsibW9kdWxlLmV4cG9ydHMgPSB7XG4gICAgICAgICAgICBzZWdzOltcIi5wbGFjZWhvbGRlci5kYXRhLXYtZGRmYzlhYzR7cGFkZGluZzpcIixbMiw0MF0sXCI7Y29sb3I6Izk5OTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6XCIsWzIsMjRdLFwifVwiXSxcbiAgICAgICAgICAgIGluZm86e3BhdGg6XCJjb21wb25lbnRzLWRpeS9wbGFjZWhvbGRlci9pbmRleFwiLCB0eXBlOlwicGFnZVwifVxuICAgICAgICB9Il0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./components-diy/placeholder/index.css?type=page\n\n}");
/***/ },
/***/ "./components-diy/placeholder/index.hxml"
/*!***********************************************!*\
!*** ./components-diy/placeholder/index.hxml ***!
\***********************************************/
(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
eval("{var render = function () {\n var _vm = this,\n _o = _vm._o,\n _n = _vm._n,\n _s = _vm._s,\n _l = _vm._l,\n _t = _vm._t,\n _q = _vm._q,\n _i = _vm._i,\n _m = _vm._m,\n _f = _vm._f,\n _k = _vm._k,\n _b = _vm._b,\n _v = _vm._v,\n _e = _vm._e,\n _u = _vm._u,\n _g = _vm._g,\n _d = _vm._d,\n _p = _vm._p,\n _c = _vm._c,\n $style = _vm.$style,\n $class = _vm.$class,\n $slots = _vm.$slots,\n eventHappen = _vm.eventHappen;\n return _c('q-page', {\n attrs: {\n \"data-internal-update-trigger\": _vm.$dataprops.internal__updateTrigger\n }\n }, [_c('q-view', {\n staticClass: \"placeholder data-v-ddfc9ac4\"\n })], 1);\n};\nvar staticRenderFns = [];\nrender._withStripped = true;\nconst pageConfig = {\n path: \"components-diy/placeholder/index\",\n globalComponents: {},\n jsonData: {},\n components: {},\n render: render,\n type: \"page\",\n staticRenderFns: staticRenderFns,\n _scopeId: \"data-q-afee7ca0\",\n asyncComponents: {},\n placeholderComponents: {}\n};\nglobal.pageLoaded(pageConfig);\nconst cssData = __webpack_require__(/*! ./components-diy/placeholder/index.css?type=page */ \"./components-diy/placeholder/index.css?type=page\");\ninjectStyle(cssData.segs, cssData.sourcemap, cssData.info);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9jb21wb25lbnRzLWRpeS9wbGFjZWhvbGRlci9pbmRleC5oeG1sIiwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy1kaXkvcGxhY2Vob2xkZXIvaW5kZXguaHhtbD9mYTdlIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBfdm0gPSB0aGlzLFxuICAgIF9vID0gX3ZtLl9vLFxuICAgIF9uID0gX3ZtLl9uLFxuICAgIF9zID0gX3ZtLl9zLFxuICAgIF9sID0gX3ZtLl9sLFxuICAgIF90ID0gX3ZtLl90LFxuICAgIF9xID0gX3ZtLl9xLFxuICAgIF9pID0gX3ZtLl9pLFxuICAgIF9tID0gX3ZtLl9tLFxuICAgIF9mID0gX3ZtLl9mLFxuICAgIF9rID0gX3ZtLl9rLFxuICAgIF9iID0gX3ZtLl9iLFxuICAgIF92ID0gX3ZtLl92LFxuICAgIF9lID0gX3ZtLl9lLFxuICAgIF91ID0gX3ZtLl91LFxuICAgIF9nID0gX3ZtLl9nLFxuICAgIF9kID0gX3ZtLl9kLFxuICAgIF9wID0gX3ZtLl9wLFxuICAgIF9jID0gX3ZtLl9jLFxuICAgICRzdHlsZSA9IF92bS4kc3R5bGUsXG4gICAgJGNsYXNzID0gX3ZtLiRjbGFzcyxcbiAgICAkc2xvdHMgPSBfdm0uJHNsb3RzLFxuICAgIGV2ZW50SGFwcGVuID0gX3ZtLmV2ZW50SGFwcGVuO1xuICByZXR1cm4gX2MoJ3EtcGFnZScsIHtcbiAgICBhdHRyczoge1xuICAgICAgXCJkYXRhLWludGVybmFsLXVwZGF0ZS10cmlnZ2VyXCI6IF92bS4kZGF0YXByb3BzLmludGVybmFsX191cGRhdGVUcmlnZ2VyXG4gICAgfVxuICB9LCBbX2MoJ3EtdmlldycsIHtcbiAgICBzdGF0aWNDbGFzczogXCJwbGFjZWhvbGRlciBkYXRhLXYtZGRmYzlhYzRcIlxuICB9KV0sIDEpO1xufTtcbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXTtcbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZTtcbmNvbnN0IHBhZ2VDb25maWcgPSB7XG4gIHBhdGg6IFwiY29tcG9uZW50cy1kaXkvcGxhY2Vob2xkZXIvaW5kZXhcIixcbiAgZ2xvYmFsQ29tcG9uZW50czoge30sXG4gIGpzb25EYXRhOiB7fSxcbiAgY29tcG9uZW50czoge30sXG4gIHJlbmRlcjogcmVuZGVyLFxuICB0eXBlOiBcInBhZ2VcIixcbiAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMsXG4gIF9zY29wZUlkOiBcImRhdGEtcS1hZmVlN2NhMFwiLFxuICBhc3luY0NvbXBvbmVudHM6IHt9LFxuICBwbGFjZWhvbGRlckNvbXBvbmVudHM6IHt9XG59O1xuZ2xvYmFsLnBhZ2VMb2FkZWQocGFnZUNvbmZpZyk7XG5jb25zdCBjc3NEYXRhID0gcmVxdWlyZShcIkQ6L3Byb2plY3RzL3Nob3AtcHJvamVjdHMvZnJvbnRlbmQvc3R1Yi1hcHAtcHJvamVjdHMvbXAtaGFybW9ueS9hc2NmL2FzY2Zfc3JjL2NvbXBvbmVudHMtZGl5L3BsYWNlaG9sZGVyL2luZGV4LmNzcz90eXBlPXBhZ2VcIik7XG5pbmplY3RTdHlsZShjc3NEYXRhLnNlZ3MsIGNzc0RhdGEuc291cmNlbWFwLCBjc3NEYXRhLmluZm8pOyJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./components-diy/placeholder/index.hxml\n\n}");
/***/ }
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Check if module exists (development only)
/******/ if (__webpack_modules__[moduleId] === undefined) {
/******/ var e = new Error("Cannot find module '" + moduleId + "'");
/******/ e.code = 'MODULE_NOT_FOUND';
/******/ throw e;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
/******/
/******/ // startup
/******/ // Load entry module and return exports
/******/ // This entry module can't be inlined because the eval-source-map devtool is used.
/******/ var __webpack_exports__ = __webpack_require__("./components-diy/placeholder/index.hxml");
/******/
/******/ })()
;

File diff suppressed because one or more lines are too long