From 46c184b920e73be741337cd95d8071ff0b31be94 Mon Sep 17 00:00:00 2001 From: xubing <18656218039@163.com> Date: Fri, 5 Dec 2025 21:15:33 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E9=A1=B9=E7=9B=AE=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E3=80=81=E9=A3=9E=E8=A1=8C=E5=99=A8=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- out/panels/ConfigPanel.js | 133 +++++++++++++++++++++-- out/panels/ConfigPanel.js.map | 2 +- out/panels/services/GitService.js | 60 ++++++++-- out/panels/services/GitService.js.map | 2 +- out/panels/views/AircraftView.js | 16 ++- out/panels/views/AircraftView.js.map | 2 +- out/panels/views/BaseView.js | 12 ++ out/panels/views/BaseView.js.map | 2 +- out/panels/views/ContainerView.js | 16 ++- out/panels/views/ContainerView.js.map | 2 +- out/panels/views/ProjectView.js | 16 ++- out/panels/views/ProjectView.js.map | 2 +- src/panels/ConfigPanel.ts | 151 +++++++++++++++++++++++--- src/panels/services/GitService.ts | 71 ++++++++++-- src/panels/views/AircraftView.ts | 18 ++- src/panels/views/BaseView.ts | 14 ++- src/panels/views/ContainerView.ts | 18 ++- src/panels/views/ProjectView.ts | 18 ++- 18 files changed, 498 insertions(+), 57 deletions(-) diff --git a/out/panels/ConfigPanel.js b/out/panels/ConfigPanel.js index f9635ec..033e48c 100644 --- a/out/panels/ConfigPanel.js +++ b/out/panels/ConfigPanel.js @@ -116,7 +116,7 @@ class ConfigPanel { return this.openRepoSelectForScope('config'); } /** - * 弹出“上传代码”时的仓库 + 分支选择弹窗 + * 弹出“上传代码”时的仓库 + 分支选择弹窗 (模块文件夹专用) */ async openUploadRepoSelect(folderId, folderType) { await this.loadRepoConfigs(); @@ -133,6 +133,24 @@ class ConfigPanel { folderType }); } + /** + * 弹出“上传代码”时的仓库 + 分支选择弹窗 (Project/Aircraft/Container 专用) + */ + async openUploadRepoSelectForScope(scope, id) { + await this.loadRepoConfigs(); + if (this.repoConfigs.length === 0) { + vscode.window.showWarningMessage('尚未配置任何仓库,请先点击右上角 "仓库配置" 按钮编辑 dcsp-repos.json。'); + return; + } + if (this.isWebviewDisposed) + return; + this.panel.webview.postMessage({ + type: 'showUploadRepoSelect', + repos: this.repoConfigs.map(r => ({ name: r.name })), + folderId: id, + folderType: scope // 传递 scope 作为类型 + }); + } /** * “获取仓库”弹窗确认后:用于拉取分支 */ @@ -147,9 +165,11 @@ class ConfigPanel { await this.fetchBranchesForRepo(repo); } /** - * “上传代码”弹窗确认后:根据 folderType 决定上传逻辑,并使用用户输入的 branchName + * “上传代码”弹窗确认后:根据 type 决定上传逻辑,并使用用户输入的 branchName */ - async handleUploadRepoSelected(folderId, folderType, repoName, branchName) { + async handleUploadRepoSelected(id, // 现在是通用 ID (folderId, projectId, aircraftId, containerId) + type, // 扩展类型 + repoName, branchName) { const trimmedBranch = (branchName || '').trim(); if (!trimmedBranch) { vscode.window.showErrorMessage('分支名称不能为空'); @@ -161,13 +181,17 @@ class ConfigPanel { vscode.window.showErrorMessage(`在仓库配置中未找到名为 "${repoName}" 的仓库`); return; } - if (folderType === 'local') { - // 本地模块 -> 选中仓库 + 指定分支 - await this.uploadLocalModuleFolder(folderId, repo.url, trimmedBranch, repo.username, repo.token); + if (type === 'local') { + // 本地模块 -> 选中仓库 + 指定分支 (原逻辑) + await this.uploadLocalModuleFolder(id, repo.url, trimmedBranch, repo.username, repo.token); + } + else if (type === 'git') { + // Git 模块 -> 选中仓库 + 指定分支 (原逻辑) + await this.processGitUploadWithBranch(id, repo, trimmedBranch); } else { - // Git 模块 -> 选中仓库 + 指定分支 - await this.processGitUploadWithBranch(folderId, repo, trimmedBranch); + // 新增逻辑:Project, Aircraft, Container 上传 + await this.uploadProjectAircraftContainer(id, type, repo, trimmedBranch); } } /** @@ -201,6 +225,7 @@ class ConfigPanel { }, async (progress) => { try { progress.report({ increment: 0, message: '准备上传...' }); + // 这里使用 GitService.pushToRepoUrl,它负责 checkout 和 push await GitService_1.GitService.pushToRepoUrl(fullPath, repo.url, branchName, repo.username, repo.token); this.projectService.updateModuleFolder(folderId, { uploaded: true, @@ -285,13 +310,18 @@ class ConfigPanel { 'importGitFile': (data) => this.importGitFile(data.filePath), 'openTheModuleFolder': (data) => this.openTheModuleFolder(data.moduleType, data.id), 'renameModuleFolder': (data) => this.renameModuleFolder(data.folderId, data.newName), - // 上传功能 + // 模块上传功能 (原逻辑) 'uploadGitModuleFolder': (data) => this.uploadGitModuleFolder(data.folderId, data.username, data.password), 'openRepoSelectForUpload': (data) => this.openUploadRepoSelect(data.folderId, 'local'), 'uploadLocalModuleFolder': (data) => this.uploadLocalModuleFolder(data.folderId, data.repoUrl, data.branchName), 'openRepoSelectForGitUpload': (data) => this.openUploadRepoSelect(data.folderId, 'git'), - // 上传时 仓库+分支 选择确认 - 'uploadRepoSelected': (data) => this.handleUploadRepoSelected(data.folderId, data.folderType, data.repoName, data.branchName) + // 新增:Project/Aircraft/Container 上传 + 'openRepoSelectForProjectUpload': (data) => this.openUploadRepoSelectForScope('project', data.projectId), + 'openRepoSelectForAircraftUpload': (data) => this.openUploadRepoSelectForScope('aircraft', data.aircraftId), + 'openRepoSelectForContainerUpload': (data) => this.openUploadRepoSelectForScope('container', data.containerId), + // 统一的上传时 仓库+分支 选择确认 + 'uploadRepoSelected': (data) => this.handleUploadRepoSelected(data.folderId, data.folderType, // 此时 data.folderType 可能是 'project' | 'aircraft' | 'container' + data.repoName, data.branchName) }; const handler = messageHandlers[data.type]; if (handler) { @@ -1072,6 +1102,87 @@ class ConfigPanel { // ============================================= // 上传功能方法 // ============================================= + /** + * 上传 Project / Aircraft / Container 目录到 Git 仓库 + */ + async uploadProjectAircraftContainer(id, type, repo, branchName) { + let fullPath = null; + let name = ''; + // 1. 获取目标目录的完整路径和名称 + if (type === 'project') { + fullPath = this.projectService.getProjectPath(id) || null; + name = this.projectService.getProjects().find(p => p.id === id)?.name || 'Project'; + } + else if (type === 'aircraft') { + const aircraft = this.projectService.getAircraftsByProject(this.currentProjectId).find(a => a.id === id); + name = aircraft?.name || 'Aircraft'; + if (aircraft) { + fullPath = path.join(this.projectService.getProjectPath(aircraft.projectId) || '', aircraft.name); + } + } + else if (type === 'container') { + const container = this.projectService.getContainersByAircraft(this.currentAircraftId).find(c => c.id === id); + name = container?.name || 'Container'; + if (container) { + const aircraft = this.projectService.getAircraftsByProject(this.currentProjectId).find(a => a.id === container.aircraftId); + if (aircraft) { + fullPath = path.join(this.projectService.getProjectPath(aircraft.projectId) || '', aircraft.name, container.name); + } + } + } + if (!fullPath || !require('fs').existsSync(fullPath)) { + vscode.window.showErrorMessage(`无法获取 ${type} "${name}" 的有效路径或目录不存在。请先配置项目路径并确保目录存在。`); + return; + } + await vscode.window.withProgress({ + location: vscode.ProgressLocation.Notification, + title: `正在上传 ${type}: ${name}`, + cancellable: false + }, async (progress) => { + try { + progress.report({ increment: 0, message: '检查目录...' }); + const fs = require('fs'); + // 检查目录是否为空 + const dirContents = await fs.promises.readdir(fullPath); + if (dirContents.length === 0) { + throw new Error('目录为空,无法上传'); + } + // 2. 检查是否为 Git 仓库并初始化 + let isGitRepo = false; + try { + // Check for .git directory + if (fs.existsSync(path.join(fullPath, '.git'))) { + isGitRepo = true; + } + } + catch (e) { /* ignore */ } + if (!isGitRepo) { + progress.report({ increment: 10, message: '初始化 Git 仓库...' }); + // initRepository 内部会创建并切换到指定分支 + await GitService_1.GitService.initRepository(fullPath, branchName); + } + // 3. 配置远程仓库 + progress.report({ increment: 20, message: '配置远程仓库...' }); + try { + // 尝试移除旧的 origin 远程,以避免冲突 + await GitService_1.GitService.removeRemote(fullPath); + } + catch (e) { /* ignore if no remote */ } + await GitService_1.GitService.addRemote(fullPath, repo.url, repo.username, repo.token); + // 4. 提交并推送 + progress.report({ increment: 40, message: '提交并推送到远程仓库...' }); + // commitAndPushToBranch 内部会 add, commit, checkout -B, push + await GitService_1.GitService.commitAndPushToBranch(fullPath, branchName, repo.url, repo.username, repo.token); + progress.report({ increment: 100, message: '完成' }); + vscode.window.showInformationMessage(`✅ ${type} ${name} 已成功上传到 ${repo.name} 的分支 ${branchName}`); + this.updateWebview(); + } + catch (error) { + console.error(`❌ ${type} 上传失败:`, error); + vscode.window.showErrorMessage(`推送失败: ${error.message || error}`); + } + }); + } async uploadGitModuleFolder(folderId, username, password) { const folder = this.projectService.getModuleFolder(folderId); if (!folder || folder.type !== 'git') { diff --git a/out/panels/ConfigPanel.js.map b/out/panels/ConfigPanel.js.map index ca6cfc3..d08ce5b 100644 --- a/out/panels/ConfigPanel.js.map +++ b/out/panels/ConfigPanel.js.map @@ -1 +1 @@ -{"version":3,"file":"ConfigPanel.js","sourceRoot":"","sources":["../../src/panels/ConfigPanel.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ConfigPanel.js","sourceRoot":"","sources":["../../src/panels/ConfigPanel.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/out/panels/services/GitService.js b/out/panels/services/GitService.js index b9ab451..4c588b1 100644 --- a/out/panels/services/GitService.js +++ b/out/panels/services/GitService.js @@ -164,17 +164,38 @@ class GitService { * 初始化Git仓库 */ static async initRepository(localPath, branchName) { + // 使用 -b 参数初始化时直接设置分支名 await execAsync(`git init && git checkout -b "${branchName}"`, { cwd: localPath }); } + /** + * 移除远程仓库 + */ + static async removeRemote(localPath) { + try { + await execAsync('git remote remove origin', { cwd: localPath }); + } + catch (error) { + // 忽略“没有该远程仓库”的错误 + if (error.stderr && !error.stderr.includes("No such remote")) { + throw error; + } + if (error.stdout && !error.stdout.includes("No such remote")) { + throw error; + } + } + } /** * 添加远程仓库 */ static async addRemote(localPath, repoUrl, username, token) { let finalUrl = repoUrl; - if (username && token) { - const u = encodeURIComponent(username); - const t = encodeURIComponent(token); - finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + if (username || token) { + const u = encodeURIComponent(username || ''); + const t = encodeURIComponent(token || ''); + // 注意: 仅在 URL 是 http/https 时添加 auth + if (repoUrl.startsWith('http')) { + finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + } } await execAsync(`git remote add origin "${finalUrl}"`, { cwd: localPath }); } @@ -202,7 +223,7 @@ class GitService { await execAsync(`git push -u origin "${branchName}" --force`, { cwd: localPath }); } /** - * 使用Git命令提交并推送 + * 使用Git命令提交并推送 (用于原有的 Git 模块更新) */ static async commitAndPush(localPath) { await execAsync('git add .', { cwd: localPath }); @@ -238,6 +259,29 @@ class GitService { ]; await execAsync(commands.join(' && '), { cwd: localPath }); } + /** + * 提交并推送到指定分支和远程 (用于 Project/Aircraft/Container 上传) + */ + static async commitAndPushToBranch(localPath, branchName, repoUrl, // 这里的 repoUrl 是为了构造带 auth 的 finalUrl + username, token) { + let finalUrl = repoUrl || 'origin'; + if (repoUrl && (username || token)) { + const u = encodeURIComponent(username || ''); + const t = encodeURIComponent(token || ''); + // 注意: 仅在 URL 是 http/https 时添加 auth + if (repoUrl.startsWith('http')) { + finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + } + } + const commands = [ + 'git add .', + // 允许没有更改时 commit 失败 (Exit code 1),所以使用 || true + `git commit -m "Auto commit from DCSP - ${new Date().toLocaleString()}" || true`, + `git checkout -B "${branchName}"`, + `git push -u "${finalUrl}" "${branchName}" --force` // 强制推送 + ]; + await execAsync(commands.join(' && '), { cwd: localPath }); + } /** * 生成模块文件夹名称 */ @@ -257,9 +301,9 @@ class GitService { /** * 构建文件树 * 这里显式忽略: - * - .git 目录 - * - .dcsp-data.json - * - 其它以 . 开头的隐藏文件/目录 + * - .git 目录 + * - .dcsp-data.json + * - 其它以 . 开头的隐藏文件/目录 */ static async buildFileTree(dir, relativePath = '') { try { diff --git a/out/panels/services/GitService.js.map b/out/panels/services/GitService.js.map index eb934b5..cf2e4f6 100644 --- a/out/panels/services/GitService.js.map +++ b/out/panels/services/GitService.js.map @@ -1 +1 @@ -{"version":3,"file":"GitService.js","sourceRoot":"","sources":["../../../src/panels/services/GitService.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"GitService.js","sourceRoot":"","sources":["../../../src/panels/services/GitService.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/out/panels/views/AircraftView.js b/out/panels/views/AircraftView.js index 830c8cb..ae40faa 100644 --- a/out/panels/views/AircraftView.js +++ b/out/panels/views/AircraftView.js @@ -14,6 +14,7 @@ class AircraftView extends BaseView_1.BaseView { 配置容器 + @@ -178,7 +179,6 @@ class AircraftView extends BaseView_1.BaseView { -

🛫 飞行器云仓库

@@ -241,6 +241,20 @@ class AircraftView extends BaseView_1.BaseView { } ); } + + // 新增上传功能 + function uploadAircraft(aircraftId, aircraftName) { + showConfirmDialog( + '上传飞行器仓库', + '确定将此飞行器目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForAircraftUpload', + aircraftId: aircraftId + }); + } + ); + } // 飞行器名称编辑功能 document.addEventListener('DOMContentLoaded', function() { diff --git a/out/panels/views/AircraftView.js.map b/out/panels/views/AircraftView.js.map index ca96889..82580fa 100644 --- a/out/panels/views/AircraftView.js.map +++ b/out/panels/views/AircraftView.js.map @@ -1 +1 @@ -{"version":3,"file":"AircraftView.js","sourceRoot":"","sources":["../../../src/panels/views/AircraftView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,YAAa,SAAQ,mBAAQ;IACtC,MAAM,CAAC,IAAwC;QAC3C,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;QAExC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;;;oEAGY,QAAQ,CAAC,EAAE,QAAQ,QAAQ,CAAC,IAAI;;;2EAGzB,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,SAAS;;;0EAGrC,QAAQ,CAAC,EAAE;;;SAG5E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgJlB,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAwQnB,CAAC;IACL,CAAC;CACJ;AAnbD,oCAmbC"} \ No newline at end of file +{"version":3,"file":"AircraftView.js","sourceRoot":"","sources":["../../../src/panels/views/AircraftView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,YAAa,SAAQ,mBAAQ;IACtC,MAAM,CAAC,IAAwC;QAC3C,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;QAExC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;;;oEAGY,QAAQ,CAAC,EAAE,QAAQ,QAAQ,CAAC,IAAI;;;2EAGzB,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,SAAS;;;0EAGrC,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,IAAI;0EAC/B,QAAQ,CAAC,EAAE;;;SAG5E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgJlB,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAqRnB,CAAC;IACL,CAAC;CACJ;AAjcD,oCAicC"} \ No newline at end of file diff --git a/out/panels/views/BaseView.js b/out/panels/views/BaseView.js index 3936b7a..9748362 100644 --- a/out/panels/views/BaseView.js +++ b/out/panels/views/BaseView.js @@ -68,6 +68,17 @@ class BaseView { border-radius: 2px; cursor: pointer; } + .btn-upload { + background: var(--vscode-button-background); + color: var(--vscode-button-foreground); + padding: 4px 8px; + border: none; + border-radius: 2px; + cursor: pointer; + } + .btn-upload:hover { + background: var(--vscode-button-hoverBackground); + } .back-btn { background: var(--vscode-button-secondaryBackground); color: var(--vscode-button-secondaryForeground); @@ -464,6 +475,7 @@ class BaseView { showRepoSelectDialog(message.repos || []); } else if (message.type === 'showUploadRepoSelect') { // 新逻辑:上传代码用(仓库 + 分支) + // 这里的 folderId/folderType 现在可能是 Project/Aircraft/Container 的 ID/Type showUploadRepoSelectDialog(message.repos || [], message.folderId, message.folderType); } }); diff --git a/out/panels/views/BaseView.js.map b/out/panels/views/BaseView.js.map index 3fcf89f..f0ce37b 100644 --- a/out/panels/views/BaseView.js.map +++ b/out/panels/views/BaseView.js.map @@ -1 +1 @@ -{"version":3,"file":"BaseView.js","sourceRoot":"","sources":["../../../src/panels/views/BaseView.ts"],"names":[],"mappings":";;;AAEA,MAAsB,QAAQ;IAG1B,YAAY,YAAwB;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAID;;OAEG;IACO,uBAAuB;QAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAmPN,CAAC;IACN,CAAC;IAED;;OAEG;IACO,mBAAmB;QACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAmNN,CAAC;IACN,CAAC;IAED;;OAEG;IACO,SAAS;QACf,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC;IAC1C,CAAC;CACJ;AAneD,4BAmeC"} \ No newline at end of file +{"version":3,"file":"BaseView.js","sourceRoot":"","sources":["../../../src/panels/views/BaseView.ts"],"names":[],"mappings":";;;AAEA,MAAsB,QAAQ;IAG1B,YAAY,YAAwB;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAID;;OAEG;IACO,uBAAuB;QAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA8PN,CAAC;IACN,CAAC;IAED;;OAEG;IACO,mBAAmB;QACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAoNN,CAAC;IACN,CAAC;IAED;;OAEG;IACO,SAAS;QACf,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC;IAC1C,CAAC;CACJ;AA/eD,4BA+eC"} \ No newline at end of file diff --git a/out/panels/views/ContainerView.js b/out/panels/views/ContainerView.js index aead072..ba7736a 100644 --- a/out/panels/views/ContainerView.js +++ b/out/panels/views/ContainerView.js @@ -16,6 +16,7 @@ class ContainerView extends BaseView_1.BaseView { 配置文件 + @@ -163,7 +164,6 @@ class ContainerView extends BaseView_1.BaseView { -

📦 容器云仓库

@@ -240,6 +240,20 @@ class ContainerView extends BaseView_1.BaseView { } ); } + + // 新增上传功能 + function uploadContainer(containerId, containerName) { + showConfirmDialog( + '上传容器仓库', + '确定将此容器目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForContainerUpload', + containerId: containerId + }); + } + ); + } // ======== Git 仓库 & 分支树 - ContainerView 作用域 ======== diff --git a/out/panels/views/ContainerView.js.map b/out/panels/views/ContainerView.js.map index 7d065ff..323e44c 100644 --- a/out/panels/views/ContainerView.js.map +++ b/out/panels/views/ContainerView.js.map @@ -1 +1 @@ -{"version":3,"file":"ContainerView.js","sourceRoot":"","sources":["../../../src/panels/views/ContainerView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,aAAc,SAAQ,mBAAQ;IACvC,MAAM,CAAC,IAAyB;QAC5B,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;QAChC,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC;QAE1C,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAA4B,EAAE,EAAE,CAAC;;;yEAGP,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC,IAAI,UAAU,SAAS,CAAC,IAAI;;;4EAGtD,SAAS,CAAC,EAAE;;;2EAGb,SAAS,CAAC,EAAE;;;SAG9E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gFAkHgD,QAAQ,EAAE,IAAI,IAAI,OAAO;;;;;;;;;;;;;cAa3F,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsPpB,CAAC;IACL,CAAC;CACJ;AAlZD,sCAkZC"} \ No newline at end of file +{"version":3,"file":"ContainerView.js","sourceRoot":"","sources":["../../../src/panels/views/ContainerView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,aAAc,SAAQ,mBAAQ;IACvC,MAAM,CAAC,IAAyB;QAC5B,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;QAChC,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC;QAE1C,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAA4B,EAAE,EAAE,CAAC;;;yEAGP,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC,IAAI,UAAU,SAAS,CAAC,IAAI;;;4EAGtD,SAAS,CAAC,EAAE;;;2EAGb,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC,IAAI;2EACjC,SAAS,CAAC,EAAE;;;SAG9E,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gFAkHgD,QAAQ,EAAE,IAAI,IAAI,OAAO;;;;;;;;;;;;;cAa3F,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmQpB,CAAC;IACL,CAAC;CACJ;AAhaD,sCAgaC"} \ No newline at end of file diff --git a/out/panels/views/ProjectView.js b/out/panels/views/ProjectView.js index 3521884..a0ff33c 100644 --- a/out/panels/views/ProjectView.js +++ b/out/panels/views/ProjectView.js @@ -24,6 +24,7 @@ class ProjectView extends BaseView_1.BaseView { + ${isConfigured ? `` : ''} @@ -212,7 +213,6 @@ class ProjectView extends BaseView_1.BaseView { -

📚 项目云仓库

@@ -288,6 +288,20 @@ class ProjectView extends BaseView_1.BaseView { } ); } + + // 新增上传功能 + function uploadProject(projectId, projectName) { + showConfirmDialog( + '上传项目仓库', + '确定将此项目目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForProjectUpload', + projectId: projectId + }); + } + ); + } // 项目名称编辑功能 document.addEventListener('DOMContentLoaded', function() { diff --git a/out/panels/views/ProjectView.js.map b/out/panels/views/ProjectView.js.map index c39025b..93b8fa5 100644 --- a/out/panels/views/ProjectView.js.map +++ b/out/panels/views/ProjectView.js.map @@ -1 +1 @@ -{"version":3,"file":"ProjectView.js","sourceRoot":"","sources":["../../../src/panels/views/ProjectView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,WAAY,SAAQ,mBAAQ;IACrC,MAAM,CAAC,IAA0E;QAC7E,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,IAAI,GAAG,EAAE,CAAC;QAErD,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAwB,EAAE,EAAE;YAC3D,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7C,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhD,OAAO;;;kEAG+C,OAAO,CAAC,EAAE,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI;;0BAEjF,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;;;;yEAItB,OAAO,CAAC,EAAE,OAAO,OAAO,CAAC,IAAI,MAAM,YAAY;0BAC9F,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;;;;yEAIqB,OAAO,CAAC,EAAE;;;SAG1E,CAAA;QAAA,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEb,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgKlB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4RlB,CAAC;IACL,CAAC;CACJ;AAleD,kCAkeC"} \ No newline at end of file +{"version":3,"file":"ProjectView.js","sourceRoot":"","sources":["../../../src/panels/views/ProjectView.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAGtC,MAAa,WAAY,SAAQ,mBAAQ;IACrC,MAAM,CAAC,IAA0E;QAC7E,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,IAAI,GAAG,EAAE,CAAC;QAErD,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAwB,EAAE,EAAE;YAC3D,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7C,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhD,OAAO;;;kEAG+C,OAAO,CAAC,EAAE,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI;;0BAEjF,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;;;;yEAItB,OAAO,CAAC,EAAE,OAAO,OAAO,CAAC,IAAI,MAAM,YAAY;0BAC9F,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;;;;sBAI9B,YAAY,CAAC,CAAC,CAAC,sDAAsD,OAAO,CAAC,EAAE,OAAO,OAAO,CAAC,IAAI,4CAA4C,CAAC,CAAC,CAAC,EAAE;yEAChG,OAAO,CAAC,EAAE;;;SAG1E,CAAA;QAAA,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEb,OAAO;;;;;;MAMT,IAAI,CAAC,SAAS,EAAE;MAChB,IAAI,CAAC,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgKlB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAySlB,CAAC;IACL,CAAC;CACJ;AAhfD,kCAgfC"} \ No newline at end of file diff --git a/src/panels/ConfigPanel.ts b/src/panels/ConfigPanel.ts index dd1efb9..4ec80b2 100755 --- a/src/panels/ConfigPanel.ts +++ b/src/panels/ConfigPanel.ts @@ -150,7 +150,7 @@ export class ConfigPanel { } /** - * 弹出“上传代码”时的仓库 + 分支选择弹窗 + * 弹出“上传代码”时的仓库 + 分支选择弹窗 (模块文件夹专用) */ private async openUploadRepoSelect(folderId: string, folderType: 'git' | 'local'): Promise { await this.loadRepoConfigs(); @@ -169,6 +169,30 @@ export class ConfigPanel { folderType }); } + + /** + * 弹出“上传代码”时的仓库 + 分支选择弹窗 (Project/Aircraft/Container 专用) + */ + private async openUploadRepoSelectForScope( + scope: 'project' | 'aircraft' | 'container', + id: string + ): Promise { + await this.loadRepoConfigs(); + + if (this.repoConfigs.length === 0) { + vscode.window.showWarningMessage('尚未配置任何仓库,请先点击右上角 "仓库配置" 按钮编辑 dcsp-repos.json。'); + return; + } + + if (this.isWebviewDisposed) return; + + this.panel.webview.postMessage({ + type: 'showUploadRepoSelect', + repos: this.repoConfigs.map(r => ({ name: r.name })), + folderId: id, + folderType: scope // 传递 scope 作为类型 + }); + } /** * “获取仓库”弹窗确认后:用于拉取分支 @@ -187,11 +211,11 @@ export class ConfigPanel { } /** - * “上传代码”弹窗确认后:根据 folderType 决定上传逻辑,并使用用户输入的 branchName + * “上传代码”弹窗确认后:根据 type 决定上传逻辑,并使用用户输入的 branchName */ private async handleUploadRepoSelected( - folderId: string, - folderType: 'git' | 'local', + id: string, // 现在是通用 ID (folderId, projectId, aircraftId, containerId) + type: 'git' | 'local' | 'project' | 'aircraft' | 'container', // 扩展类型 repoName: string, branchName: string ): Promise { @@ -208,18 +232,21 @@ export class ConfigPanel { return; } - if (folderType === 'local') { - // 本地模块 -> 选中仓库 + 指定分支 + if (type === 'local') { + // 本地模块 -> 选中仓库 + 指定分支 (原逻辑) await this.uploadLocalModuleFolder( - folderId, + id, repo.url, trimmedBranch, repo.username, repo.token ); + } else if (type === 'git') { + // Git 模块 -> 选中仓库 + 指定分支 (原逻辑) + await this.processGitUploadWithBranch(id, repo, trimmedBranch); } else { - // Git 模块 -> 选中仓库 + 指定分支 - await this.processGitUploadWithBranch(folderId, repo, trimmedBranch); + // 新增逻辑:Project, Aircraft, Container 上传 + await this.uploadProjectAircraftContainer(id, type, repo, trimmedBranch); } } @@ -264,6 +291,7 @@ export class ConfigPanel { try { progress.report({ increment: 0, message: '准备上传...' }); + // 这里使用 GitService.pushToRepoUrl,它负责 checkout 和 push await GitService.pushToRepoUrl( fullPath, repo.url, @@ -367,16 +395,21 @@ export class ConfigPanel { 'openTheModuleFolder': (data) => this.openTheModuleFolder(data.moduleType, data.id), 'renameModuleFolder': (data) => this.renameModuleFolder(data.folderId, data.newName), - // 上传功能 + // 模块上传功能 (原逻辑) 'uploadGitModuleFolder': (data) => this.uploadGitModuleFolder(data.folderId, data.username, data.password), 'openRepoSelectForUpload': (data) => this.openUploadRepoSelect(data.folderId, 'local'), 'uploadLocalModuleFolder': (data) => this.uploadLocalModuleFolder(data.folderId, data.repoUrl, data.branchName), 'openRepoSelectForGitUpload': (data) => this.openUploadRepoSelect(data.folderId, 'git'), + + // 新增:Project/Aircraft/Container 上传 + 'openRepoSelectForProjectUpload': (data) => this.openUploadRepoSelectForScope('project', data.projectId), + 'openRepoSelectForAircraftUpload': (data) => this.openUploadRepoSelectForScope('aircraft', data.aircraftId), + 'openRepoSelectForContainerUpload': (data) => this.openUploadRepoSelectForScope('container', data.containerId), - // 上传时 仓库+分支 选择确认 + // 统一的上传时 仓库+分支 选择确认 'uploadRepoSelected': (data) => this.handleUploadRepoSelected( data.folderId, - data.folderType, + data.folderType, // 此时 data.folderType 可能是 'project' | 'aircraft' | 'container' data.repoName, data.branchName ) @@ -1350,6 +1383,98 @@ export class ConfigPanel { // ============================================= // 上传功能方法 // ============================================= + + /** + * 上传 Project / Aircraft / Container 目录到 Git 仓库 + */ + private async uploadProjectAircraftContainer( + id: string, + type: 'project' | 'aircraft' | 'container', + repo: RepoConfigItem, + branchName: string + ): Promise { + let fullPath: string | null = null; + let name: string = ''; + + // 1. 获取目标目录的完整路径和名称 + if (type === 'project') { + fullPath = this.projectService.getProjectPath(id) || null; + name = this.projectService.getProjects().find(p => p.id === id)?.name || 'Project'; + } else if (type === 'aircraft') { + const aircraft = this.projectService.getAircraftsByProject(this.currentProjectId).find(a => a.id === id); + name = aircraft?.name || 'Aircraft'; + if (aircraft) { + fullPath = path.join(this.projectService.getProjectPath(aircraft.projectId) || '', aircraft.name); + } + } else if (type === 'container') { + const container = this.projectService.getContainersByAircraft(this.currentAircraftId).find(c => c.id === id); + name = container?.name || 'Container'; + if (container) { + const aircraft = this.projectService.getAircraftsByProject(this.currentProjectId).find(a => a.id === container.aircraftId); + if (aircraft) { + fullPath = path.join(this.projectService.getProjectPath(aircraft.projectId) || '', aircraft.name, container.name); + } + } + } + + if (!fullPath || !require('fs').existsSync(fullPath)) { + vscode.window.showErrorMessage(`无法获取 ${type} "${name}" 的有效路径或目录不存在。请先配置项目路径并确保目录存在。`); + return; + } + + await vscode.window.withProgress({ + location: vscode.ProgressLocation.Notification, + title: `正在上传 ${type}: ${name}`, + cancellable: false + }, async (progress) => { + try { + progress.report({ increment: 0, message: '检查目录...' }); + + const fs = require('fs'); + // 检查目录是否为空 + const dirContents = await fs.promises.readdir(fullPath!); + if (dirContents.length === 0) { + throw new Error('目录为空,无法上传'); + } + + // 2. 检查是否为 Git 仓库并初始化 + let isGitRepo = false; + try { + // Check for .git directory + if (fs.existsSync(path.join(fullPath!, '.git'))) { + isGitRepo = true; + } + } catch (e) { /* ignore */ } + + if (!isGitRepo) { + progress.report({ increment: 10, message: '初始化 Git 仓库...' }); + // initRepository 内部会创建并切换到指定分支 + await GitService.initRepository(fullPath!, branchName); + } + + // 3. 配置远程仓库 + progress.report({ increment: 20, message: '配置远程仓库...' }); + try { + // 尝试移除旧的 origin 远程,以避免冲突 + await GitService.removeRemote(fullPath!); + } catch(e) { /* ignore if no remote */ } + await GitService.addRemote(fullPath!, repo.url, repo.username, repo.token); + + // 4. 提交并推送 + progress.report({ increment: 40, message: '提交并推送到远程仓库...' }); + // commitAndPushToBranch 内部会 add, commit, checkout -B, push + await GitService.commitAndPushToBranch(fullPath!, branchName, repo.url, repo.username, repo.token); + + progress.report({ increment: 100, message: '完成' }); + + vscode.window.showInformationMessage(`✅ ${type} ${name} 已成功上传到 ${repo.name} 的分支 ${branchName}`); + this.updateWebview(); + } catch (error: any) { + console.error(`❌ ${type} 上传失败:`, error); + vscode.window.showErrorMessage(`推送失败: ${error.message || error}`); + } + }); + } private async uploadGitModuleFolder(folderId: string, username?: string, password?: string): Promise { const folder = this.projectService.getModuleFolder(folderId); @@ -1845,4 +1970,4 @@ export class ConfigPanel { }); } } -} +} \ No newline at end of file diff --git a/src/panels/services/GitService.ts b/src/panels/services/GitService.ts index 1e6774a..f7385e5 100755 --- a/src/panels/services/GitService.ts +++ b/src/panels/services/GitService.ts @@ -171,9 +171,27 @@ export class GitService { * 初始化Git仓库 */ static async initRepository(localPath: string, branchName: string): Promise { + // 使用 -b 参数初始化时直接设置分支名 await execAsync(`git init && git checkout -b "${branchName}"`, { cwd: localPath }); } + /** + * 移除远程仓库 + */ + static async removeRemote(localPath: string): Promise { + try { + await execAsync('git remote remove origin', { cwd: localPath }); + } catch (error: any) { + // 忽略“没有该远程仓库”的错误 + if (error.stderr && !error.stderr.includes("No such remote")) { + throw error; + } + if (error.stdout && !error.stdout.includes("No such remote")) { + throw error; + } + } + } + /** * 添加远程仓库 */ @@ -185,10 +203,13 @@ export class GitService { ): Promise { let finalUrl = repoUrl; - if (username && token) { - const u = encodeURIComponent(username); - const t = encodeURIComponent(token); - finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + if (username || token) { + const u = encodeURIComponent(username || ''); + const t = encodeURIComponent(token || ''); + // 注意: 仅在 URL 是 http/https 时添加 auth + if (repoUrl.startsWith('http')) { + finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + } } await execAsync(`git remote add origin "${finalUrl}"`, { cwd: localPath }); @@ -221,7 +242,7 @@ export class GitService { } /** - * 使用Git命令提交并推送 + * 使用Git命令提交并推送 (用于原有的 Git 模块更新) */ static async commitAndPush(localPath: string): Promise { await execAsync('git add .', { cwd: localPath }); @@ -270,6 +291,38 @@ export class GitService { await execAsync(commands.join(' && '), { cwd: localPath }); } + + /** + * 提交并推送到指定分支和远程 (用于 Project/Aircraft/Container 上传) + */ + static async commitAndPushToBranch( + localPath: string, + branchName: string, + repoUrl?: string, // 这里的 repoUrl 是为了构造带 auth 的 finalUrl + username?: string, + token?: string + ): Promise { + let finalUrl = repoUrl || 'origin'; + + if (repoUrl && (username || token)) { + const u = encodeURIComponent(username || ''); + const t = encodeURIComponent(token || ''); + // 注意: 仅在 URL 是 http/https 时添加 auth + if (repoUrl.startsWith('http')) { + finalUrl = repoUrl.replace('://', `://${u}:${t}@`); + } + } + + const commands = [ + 'git add .', + // 允许没有更改时 commit 失败 (Exit code 1),所以使用 || true + `git commit -m "Auto commit from DCSP - ${new Date().toLocaleString()}" || true`, + `git checkout -B "${branchName}"`, // 切换到指定分支 + `git push -u "${finalUrl}" "${branchName}" --force` // 强制推送 + ]; + + await execAsync(commands.join(' && '), { cwd: localPath }); + } /** * 生成模块文件夹名称 @@ -292,9 +345,9 @@ export class GitService { /** * 构建文件树 * 这里显式忽略: - * - .git 目录 - * - .dcsp-data.json - * - 其它以 . 开头的隐藏文件/目录 + * - .git 目录 + * - .dcsp-data.json + * - 其它以 . 开头的隐藏文件/目录 */ static async buildFileTree(dir: string, relativePath: string = ''): Promise { try { @@ -338,4 +391,4 @@ export class GitService { return []; } } -} +} \ No newline at end of file diff --git a/src/panels/views/AircraftView.ts b/src/panels/views/AircraftView.ts index 1780373..62d0b5b 100755 --- a/src/panels/views/AircraftView.ts +++ b/src/panels/views/AircraftView.ts @@ -14,6 +14,7 @@ export class AircraftView extends BaseView { 配置容器 + @@ -179,7 +180,6 @@ export class AircraftView extends BaseView { -

🛫 飞行器云仓库

@@ -242,6 +242,20 @@ export class AircraftView extends BaseView { } ); } + + // 新增上传功能 + function uploadAircraft(aircraftId, aircraftName) { + showConfirmDialog( + '上传飞行器仓库', + '确定将此飞行器目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForAircraftUpload', + aircraftId: aircraftId + }); + } + ); + } // 飞行器名称编辑功能 document.addEventListener('DOMContentLoaded', function() { @@ -436,4 +450,4 @@ export class AircraftView extends BaseView { `; } -} +} \ No newline at end of file diff --git a/src/panels/views/BaseView.ts b/src/panels/views/BaseView.ts index af3d3b7..a4f3823 100755 --- a/src/panels/views/BaseView.ts +++ b/src/panels/views/BaseView.ts @@ -72,6 +72,17 @@ export abstract class BaseView { border-radius: 2px; cursor: pointer; } + .btn-upload { + background: var(--vscode-button-background); + color: var(--vscode-button-foreground); + padding: 4px 8px; + border: none; + border-radius: 2px; + cursor: pointer; + } + .btn-upload:hover { + background: var(--vscode-button-hoverBackground); + } .back-btn { background: var(--vscode-button-secondaryBackground); color: var(--vscode-button-secondaryForeground); @@ -469,6 +480,7 @@ export abstract class BaseView { showRepoSelectDialog(message.repos || []); } else if (message.type === 'showUploadRepoSelect') { // 新逻辑:上传代码用(仓库 + 分支) + // 这里的 folderId/folderType 现在可能是 Project/Aircraft/Container 的 ID/Type showUploadRepoSelectDialog(message.repos || [], message.folderId, message.folderType); } }); @@ -483,4 +495,4 @@ export abstract class BaseView { protected getStyles(): string { return this.getBaseStylesAndScripts(); } -} +} \ No newline at end of file diff --git a/src/panels/views/ContainerView.ts b/src/panels/views/ContainerView.ts index 1d8b6c4..9d5ecc9 100755 --- a/src/panels/views/ContainerView.ts +++ b/src/panels/views/ContainerView.ts @@ -16,6 +16,7 @@ export class ContainerView extends BaseView { 配置文件 + @@ -164,7 +165,6 @@ export class ContainerView extends BaseView { -

📦 容器云仓库

@@ -241,6 +241,20 @@ export class ContainerView extends BaseView { } ); } + + // 新增上传功能 + function uploadContainer(containerId, containerName) { + showConfirmDialog( + '上传容器仓库', + '确定将此容器目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForContainerUpload', + containerId: containerId + }); + } + ); + } // ======== Git 仓库 & 分支树 - ContainerView 作用域 ======== @@ -403,4 +417,4 @@ export class ContainerView extends BaseView { `; } -} +} \ No newline at end of file diff --git a/src/panels/views/ProjectView.ts b/src/panels/views/ProjectView.ts index 1631fcb..77ca111 100755 --- a/src/panels/views/ProjectView.ts +++ b/src/panels/views/ProjectView.ts @@ -25,6 +25,7 @@ export class ProjectView extends BaseView { + ${isConfigured ? `` : ''} @@ -213,7 +214,6 @@ export class ProjectView extends BaseView { -

📚 项目云仓库

@@ -289,6 +289,20 @@ export class ProjectView extends BaseView { } ); } + + // 新增上传功能 + function uploadProject(projectId, projectName) { + showConfirmDialog( + '上传项目仓库', + '确定将此项目目录(包括所有子文件夹和文件)上传到一个新的 Git 仓库分支吗?', + function() { + vscode.postMessage({ + type: 'openRepoSelectForProjectUpload', + projectId: projectId + }); + } + ); + } // 项目名称编辑功能 document.addEventListener('DOMContentLoaded', function() { @@ -483,4 +497,4 @@ export class ProjectView extends BaseView { `; } -} +} \ No newline at end of file