feat: support git repositories and project management

- Git (JGit) log fetching: mirror clone cache, incremental fetch, time/author filter, HTTPS token & SSH key auth
- Git preset management and /api/git/* endpoints (test-connection, version-range, fetch)
- Markdown report generalization: project meta, commit range, short hash entries
- Project management: project entities, drag-drop repo assignment, sorting, rename sync, non-empty delete protection
- AI analysis: project-based grouping merges SVN+Git commits, excludes empty projects from Excel
- Batch fetch: skip repos without logs instead of aborting the whole flow
- Frontend: project management page, repo page project dropdown, Git fields, sidebar updates
- Tests: GitLogFetcherTest, DateRangeResolverTest, ProjectConfigServiceTest, merge/exclusion coverage
This commit is contained in:
liujing
2026-07-31 21:19:12 +08:00
parent b5c7907c23
commit 53f8b2e21b
50 changed files with 4434 additions and 291 deletions
+6 -1
View File
@@ -2,8 +2,11 @@
# Docker 镜像仓库加速(默认使用 docker.1ms.run 国内代理)
# 如需切换回 Docker Hub
# DOCKER_REGISTRY_MIRROR=docker.io/library make up
# npm 源加速(默认 npmmirror 国内镜像,可用 NPM_REGISTRY 覆盖):
# NPM_REGISTRY=https://registry.npmjs.org make up
# ============================================================
ARG REGISTRY_MIRROR=docker.1ms.run/library
ARG NPM_REGISTRY=https://registry.npmmirror.com
# 内部/开发用途,推荐通过 make fast-up 触发快速构建
ARG FAST_BUILD=false
@@ -16,7 +19,9 @@ WORKDIR /frontend
COPY frontend-vue/package.json frontend-vue/package-lock.json ./
RUN --mount=type=cache,target=/root/.npm npm ci
RUN --mount=type=cache,target=/root/.npm \
npm config set registry ${NPM_REGISTRY} && \
npm ci
COPY frontend-vue/ ./