oh-my-worktree 0.8.3 → 0.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -24
- package/bin/owt +1 -1
- package/install.js +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# owt (oh-my-worktree)
|
|
2
2
|
|
|
3
|
-
A TUI tool for managing Git worktrees
|
|
3
|
+
A TUI tool for managing Git worktrees from either regular repositories or bare `.bare` layouts.
|
|
4
|
+
|
|
5
|
+
Run it from a `.bare` worktree layout or from a regular non-bare Git repository. For regular repositories, new worktrees are created under `~/.owt/worktree/<repo-name>/` by default.
|
|
4
6
|
|
|
5
7
|
## Installation
|
|
6
8
|
|
|
@@ -17,7 +19,11 @@ npx oh-my-worktree
|
|
|
17
19
|
## Quick Start
|
|
18
20
|
|
|
19
21
|
```bash
|
|
20
|
-
#
|
|
22
|
+
# Run directly inside an existing regular Git repository
|
|
23
|
+
cd /path/to/regular-git-repo
|
|
24
|
+
owt
|
|
25
|
+
|
|
26
|
+
# Or clone into the .bare sibling layout
|
|
21
27
|
owt clone https://github.com/user/repo.git
|
|
22
28
|
cd repo/main
|
|
23
29
|
|
|
@@ -57,22 +63,9 @@ owt
|
|
|
57
63
|
| `?` | Show help |
|
|
58
64
|
| `q` | Quit |
|
|
59
65
|
|
|
60
|
-
##
|
|
61
|
-
|
|
62
|
-
When adding a new worktree, select branch type for automatic base branch:
|
|
66
|
+
## Adding Worktrees
|
|
63
67
|
|
|
64
|
-
|
|
65
|
-
|-----|------|------|
|
|
66
|
-
| `f` | feature | develop |
|
|
67
|
-
| `h` | hotfix | main |
|
|
68
|
-
| `r` | release | develop |
|
|
69
|
-
| `b` | bugfix | develop |
|
|
70
|
-
| `c` | custom | (select manually) |
|
|
71
|
-
|
|
72
|
-
In branch input screen:
|
|
73
|
-
- `Shift+F` - Fetch remote base branch
|
|
74
|
-
- `Shift+U` - Use remote as base
|
|
75
|
-
- `Shift+L` - Use local as base
|
|
68
|
+
Press `a`, type the new branch name, and press `Enter`. Use `Tab` in the add dialog to cycle the base branch for the new worktree.
|
|
76
69
|
|
|
77
70
|
## Status Icons
|
|
78
71
|
|
|
@@ -84,6 +77,8 @@ In branch input screen:
|
|
|
84
77
|
| `!` | Conflicts |
|
|
85
78
|
| `*` | Staged + Unstaged |
|
|
86
79
|
|
|
80
|
+
The worktree list also includes a `PR` column for GitHub pull request state. It shows only `open`, `closed`, `merged`, or `draft`; branches without a GitHub PR, non-GitHub remotes, lookup failures, and unknown states show `-`.
|
|
81
|
+
|
|
87
82
|
## Configuration
|
|
88
83
|
|
|
89
84
|
Config file: `~/.config/owt/config.toml`
|
|
@@ -91,19 +86,14 @@ Config file: `~/.config/owt/config.toml`
|
|
|
91
86
|
```toml
|
|
92
87
|
editor = "code"
|
|
93
88
|
terminal = "Ghostty"
|
|
89
|
+
worktree_root = "~/.owt/worktree"
|
|
94
90
|
copy_files = [".env", ".envrc"]
|
|
95
|
-
|
|
96
|
-
[[branch_types]]
|
|
97
|
-
name = "feature"
|
|
98
|
-
prefix = "feature/"
|
|
99
|
-
base = "develop"
|
|
100
|
-
shortcut = "f"
|
|
101
91
|
```
|
|
102
92
|
|
|
103
93
|
## Requirements
|
|
104
94
|
|
|
105
95
|
- Git 2.5+ (for worktree support)
|
|
106
|
-
- A
|
|
96
|
+
- A Git repository
|
|
107
97
|
|
|
108
98
|
## More Information
|
|
109
99
|
|
package/bin/owt
CHANGED
|
@@ -4,7 +4,7 @@ const { spawn } = require('child_process');
|
|
|
4
4
|
const path = require('path');
|
|
5
5
|
const fs = require('fs');
|
|
6
6
|
|
|
7
|
-
const binName = process.platform === 'win32' ? 'owt.exe' : 'owt';
|
|
7
|
+
const binName = process.platform === 'win32' ? 'owt-bin.exe' : 'owt-bin';
|
|
8
8
|
const binPath = path.join(__dirname, binName);
|
|
9
9
|
|
|
10
10
|
if (!fs.existsSync(binPath)) {
|
package/install.js
CHANGED
|
@@ -108,7 +108,7 @@ async function install() {
|
|
|
108
108
|
const binaryName = getPlatform();
|
|
109
109
|
const version = getPackageVersion();
|
|
110
110
|
const binDir = path.join(__dirname, 'bin');
|
|
111
|
-
const binPath = path.join(binDir, BINARY_NAME + (process.platform === 'win32' ? '.exe' : ''));
|
|
111
|
+
const binPath = path.join(binDir, BINARY_NAME + '-bin' + (process.platform === 'win32' ? '.exe' : ''));
|
|
112
112
|
|
|
113
113
|
// Create bin directory
|
|
114
114
|
if (!fs.existsSync(binDir)) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oh-my-worktree",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "A TUI tool for managing Git worktrees in bare
|
|
3
|
+
"version": "0.10.2",
|
|
4
|
+
"description": "A TUI tool for managing Git worktrees in bare and regular repositories",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"git",
|
|
7
7
|
"worktree",
|