diff --git a/CHANGELOG.md b/CHANGELOG.md index 2050c93..013f155 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to the "git-worktree" extension will be documented in this f +## [0.0.7] + +## Added + +- Added "Open git worktree in current window" command and context menu option + ## [0.0.6] ## Added diff --git a/package-lock.json b/package-lock.json index e8c3a15..5b50cb8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "worktrees", - "version": "0.0.6", + "version": "0.0.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "worktrees", - "version": "0.0.6", + "version": "0.0.7", "license": "GPL-3.0-only", "devDependencies": { "@types/mocha": "^10.0.6", diff --git a/package.json b/package.json index 3881904..2e88c39 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "displayName": "Git Worktree View", "publisher": "kaih2o", "description": "Integrated git worktree control", - "version": "0.0.6", + "version": "0.0.7", "author": { "name": "2kai2kai2" }, @@ -41,6 +41,11 @@ "title": "Worktrees: Open git worktree in new window", "icon": "$(empty-window)" }, + { + "command": "worktrees.open-worktree-current-window", + "title": "Worktrees: Open git worktree in current window", + "icon": "$(window-active)" + }, { "command": "worktrees.add-new-worktree", "title": "Worktrees: Create new worktree", @@ -92,6 +97,11 @@ "when": "viewItem == worktrees:worktree", "group": "inline" }, + { + "command": "worktrees.open-worktree-current-window", + "when": "viewItem == worktrees:worktree", + "group": "inline" + }, { "command": "worktrees.add-new-worktree", "when": "viewItem == worktrees:repo-pinned || viewItem == worktrees:repo-unpinned", diff --git a/src/extension.ts b/src/extension.ts index 4dedb68..81c480c 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -133,6 +133,19 @@ export async function activate(context: vscode.ExtensionContext) { await openTreeItem(treeitem, true); }, ), + vscode.commands.registerCommand( + "worktrees.open-worktree-current-window", + async (treeitem?: WorktreeTreeID) => { + if (!isWorktreeTreeID(treeitem)) { + const choice = await pickWorktree("Pick Worktree to Open"); + if (!isWorktreeTreeID(choice)) { + return; + } + treeitem = choice; + } + await openTreeItem(treeitem, false); + }, + ), vscode.commands.registerCommand("worktrees.add-new-worktree", async (treeitem: TreeID) => { if (!treeitem) { const chosen = await pickRepository();