sync-worktrees 1.2.2 → 1.3.0
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 +48 -1
- package/dist/services/git.service.d.ts +7 -0
- package/dist/services/git.service.d.ts.map +1 -1
- package/dist/services/git.service.js +94 -12
- package/dist/services/git.service.js.map +1 -1
- package/dist/services/worktree-sync.service.d.ts.map +1 -1
- package/dist/services/worktree-sync.service.js +23 -6
- package/dist/services/worktree-sync.service.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/cli.d.ts +1 -0
- package/dist/utils/cli.d.ts.map +1 -1
- package/dist/utils/cli.js +9 -0
- package/dist/utils/cli.js.map +1 -1
- package/dist/utils/date-filter.d.ts +10 -0
- package/dist/utils/date-filter.d.ts.map +1 -0
- package/dist/utils/date-filter.js +47 -0
- package/dist/utils/date-filter.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,6 +26,7 @@ sync-worktrees maintains a **separate working directory for each remote branch**
|
|
|
26
26
|
- 📝 Clear logging with timestamps and progress indicators
|
|
27
27
|
- 📋 Config file support for managing multiple repositories
|
|
28
28
|
- 🔁 Automatic retry with exponential backoff for network and filesystem errors
|
|
29
|
+
- 🕐 Branch age filtering - only sync branches active within a specified time period
|
|
29
30
|
|
|
30
31
|
## Installation
|
|
31
32
|
|
|
@@ -78,6 +79,7 @@ sync-worktrees --config ./sync-worktrees.config.js
|
|
|
78
79
|
| `--worktreeDir` | `-w` | Directory for storing worktrees | Yes* | - |
|
|
79
80
|
| `--cronSchedule` | `-s` | Cron pattern for scheduling | No | `0 * * * *` (hourly) |
|
|
80
81
|
| `--runOnce` | - | Execute once and exit | No | `false` |
|
|
82
|
+
| `--branchMaxAge` | `-a` | Maximum age of branches to sync (e.g., '30d', '6m', '1y') | No | - |
|
|
81
83
|
| `--help` | `-h` | Show help | No | - |
|
|
82
84
|
|
|
83
85
|
\* Required when not using a config file
|
|
@@ -91,6 +93,12 @@ sync-worktrees -u https://github.com/user/repo.git -w ./worktrees --runOnce
|
|
|
91
93
|
|
|
92
94
|
# Scheduled sync (every 30 minutes)
|
|
93
95
|
sync-worktrees -u git@github.com:user/repo.git -w ./worktrees -s "*/30 * * * *"
|
|
96
|
+
|
|
97
|
+
# Only sync branches active in the last 30 days
|
|
98
|
+
sync-worktrees -u https://github.com/user/repo.git -w ./worktrees --branchMaxAge 30d
|
|
99
|
+
|
|
100
|
+
# Sync branches active in the last 6 months, check every hour
|
|
101
|
+
sync-worktrees -u git@github.com:user/repo.git -w ./worktrees --branchMaxAge 6m
|
|
94
102
|
```
|
|
95
103
|
|
|
96
104
|
### Using a config file
|
|
@@ -114,7 +122,8 @@ module.exports = {
|
|
|
114
122
|
// Optional defaults for all repositories
|
|
115
123
|
defaults: {
|
|
116
124
|
cronSchedule: "0 * * * *", // Hourly
|
|
117
|
-
runOnce: false
|
|
125
|
+
runOnce: false,
|
|
126
|
+
branchMaxAge: "30d" // Only sync branches active in last 30 days
|
|
118
127
|
},
|
|
119
128
|
|
|
120
129
|
// Retry configuration (optional - these are the defaults)
|
|
@@ -136,6 +145,7 @@ module.exports = {
|
|
|
136
145
|
name: "backend",
|
|
137
146
|
repoUrl: process.env.BACKEND_REPO_URL, // Environment variables supported
|
|
138
147
|
worktreeDir: "/absolute/path/backend-worktrees",
|
|
148
|
+
branchMaxAge: "6m", // Override: only sync branches active in last 6 months
|
|
139
149
|
// Uses default schedule
|
|
140
150
|
retry: { maxAttempts: 10 } // Override retry for this repo
|
|
141
151
|
}
|
|
@@ -172,6 +182,43 @@ repositories: [{
|
|
|
172
182
|
}]
|
|
173
183
|
```
|
|
174
184
|
|
|
185
|
+
### Branch Age Filtering
|
|
186
|
+
|
|
187
|
+
To reduce clutter and save disk space, you can configure sync-worktrees to only sync branches that have been active within a specified time period. This is particularly useful for repositories with many stale or abandoned branches.
|
|
188
|
+
|
|
189
|
+
**Duration format**: `<number><unit>`
|
|
190
|
+
- `h` - hours (e.g., `24h`)
|
|
191
|
+
- `d` - days (e.g., `30d`)
|
|
192
|
+
- `w` - weeks (e.g., `4w`)
|
|
193
|
+
- `m` - months (e.g., `6m`)
|
|
194
|
+
- `y` - years (e.g., `1y`)
|
|
195
|
+
|
|
196
|
+
**Examples**:
|
|
197
|
+
```bash
|
|
198
|
+
# Command line
|
|
199
|
+
sync-worktrees -u https://github.com/user/repo.git -w ./worktrees --branchMaxAge 30d
|
|
200
|
+
|
|
201
|
+
# Config file - global default
|
|
202
|
+
defaults: {
|
|
203
|
+
branchMaxAge: "90d" // Only sync branches active in last 90 days
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
# Config file - per repository
|
|
207
|
+
repositories: [{
|
|
208
|
+
name: "active-project",
|
|
209
|
+
branchMaxAge: "14d", // Very active project - only last 2 weeks
|
|
210
|
+
}, {
|
|
211
|
+
name: "legacy-project",
|
|
212
|
+
branchMaxAge: "1y", // Legacy project - keep branches from last year
|
|
213
|
+
}]
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
When branch filtering is active, the tool will:
|
|
217
|
+
- Fetch commit timestamps for all remote branches
|
|
218
|
+
- Filter out branches older than the specified age
|
|
219
|
+
- Log how many branches were excluded
|
|
220
|
+
- Only create/maintain worktrees for active branches
|
|
221
|
+
|
|
175
222
|
## Requirements
|
|
176
223
|
|
|
177
224
|
- Node.js >= 22.0.0
|
|
@@ -5,11 +5,17 @@ export declare class GitService {
|
|
|
5
5
|
private git;
|
|
6
6
|
private bareRepoPath;
|
|
7
7
|
private mainWorktreePath;
|
|
8
|
+
private defaultBranch;
|
|
8
9
|
constructor(config: Config);
|
|
9
10
|
initialize(): Promise<SimpleGit>;
|
|
10
11
|
getGit(): SimpleGit;
|
|
12
|
+
getDefaultBranch(): string;
|
|
11
13
|
fetchAll(): Promise<void>;
|
|
12
14
|
getRemoteBranches(): Promise<string[]>;
|
|
15
|
+
getRemoteBranchesWithActivity(): Promise<{
|
|
16
|
+
branch: string;
|
|
17
|
+
lastActivity: Date;
|
|
18
|
+
}[]>;
|
|
13
19
|
addWorktree(branchName: string, worktreePath: string): Promise<void>;
|
|
14
20
|
removeWorktree(worktreePath: string): Promise<void>;
|
|
15
21
|
pruneWorktrees(): Promise<void>;
|
|
@@ -19,6 +25,7 @@ export declare class GitService {
|
|
|
19
25
|
hasModifiedSubmodules(worktreePath: string): Promise<boolean>;
|
|
20
26
|
hasOperationInProgress(worktreePath: string): Promise<boolean>;
|
|
21
27
|
getCurrentBranch(): Promise<string>;
|
|
28
|
+
private detectDefaultBranch;
|
|
22
29
|
getWorktrees(): Promise<{
|
|
23
30
|
path: string;
|
|
24
31
|
branch: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.service.d.ts","sourceRoot":"","sources":["../../src/services/git.service.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,qBAAa,UAAU;
|
|
1
|
+
{"version":3,"file":"git.service.d.ts","sourceRoot":"","sources":["../../src/services/git.service.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,qBAAa,UAAU;IAMT,OAAO,CAAC,MAAM;IAL1B,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAkB;gBAEnB,MAAM,EAAE,MAAM;IAK5B,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;IA6GtC,MAAM,IAAI,SAAS;IAOnB,gBAAgB,IAAI,MAAM;IAIpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAMzB,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMtC,6BAA6B,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,IAAI,CAAA;KAAE,EAAE,CAAC;IA8BlF,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCpE,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM3D,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB1D,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYzD,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW7D,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe9D,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;YAM3B,mBAAmB;IAsC3B,YAAY,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;YAKnD,oBAAoB;CA4BnC"}
|
|
@@ -46,10 +46,11 @@ class GitService {
|
|
|
46
46
|
git = null;
|
|
47
47
|
bareRepoPath;
|
|
48
48
|
mainWorktreePath;
|
|
49
|
+
defaultBranch = "main"; // Will be updated after detection
|
|
49
50
|
constructor(config) {
|
|
50
51
|
this.config = config;
|
|
51
52
|
this.bareRepoPath = this.config.bareRepoDir || (0, git_url_1.getDefaultBareRepoDir)(this.config.repoUrl);
|
|
52
|
-
this.mainWorktreePath = path.join(this.config.worktreeDir, "main");
|
|
53
|
+
this.mainWorktreePath = path.join(this.config.worktreeDir, "main"); // Temporary, will be updated
|
|
53
54
|
}
|
|
54
55
|
async initialize() {
|
|
55
56
|
const { repoUrl } = this.config;
|
|
@@ -82,6 +83,10 @@ class GitService {
|
|
|
82
83
|
// Fetch all remote branches to ensure they exist locally
|
|
83
84
|
console.log("Fetching remote branches...");
|
|
84
85
|
await bareGit.fetch(["--all"]);
|
|
86
|
+
// Detect the default branch
|
|
87
|
+
this.defaultBranch = await this.detectDefaultBranch(bareGit);
|
|
88
|
+
this.mainWorktreePath = path.join(this.config.worktreeDir, this.defaultBranch);
|
|
89
|
+
console.log(`Detected default branch: ${this.defaultBranch}`);
|
|
85
90
|
// Check if main worktree exists
|
|
86
91
|
let needsMainWorktree = true;
|
|
87
92
|
try {
|
|
@@ -93,41 +98,49 @@ class GitService {
|
|
|
93
98
|
}
|
|
94
99
|
if (needsMainWorktree) {
|
|
95
100
|
// Create main worktree if it doesn't exist
|
|
96
|
-
console.log(`Creating
|
|
101
|
+
console.log(`Creating ${this.defaultBranch} worktree at "${this.mainWorktreePath}"...`);
|
|
97
102
|
await fs.mkdir(this.config.worktreeDir, { recursive: true });
|
|
98
103
|
// Use absolute path for worktree add to avoid relative path issues
|
|
99
104
|
const absoluteWorktreePath = path.resolve(this.mainWorktreePath);
|
|
100
105
|
try {
|
|
101
|
-
// Check if local
|
|
106
|
+
// Check if local branch exists
|
|
102
107
|
const branches = await bareGit.branch();
|
|
103
|
-
const
|
|
104
|
-
if (
|
|
105
|
-
await bareGit.raw(["worktree", "add", absoluteWorktreePath,
|
|
108
|
+
const defaultBranchExists = branches.all.includes(this.defaultBranch);
|
|
109
|
+
if (defaultBranchExists) {
|
|
110
|
+
await bareGit.raw(["worktree", "add", absoluteWorktreePath, this.defaultBranch]);
|
|
106
111
|
// Set upstream tracking after creating worktree
|
|
107
112
|
const worktreeGit = (0, simple_git_1.default)(absoluteWorktreePath);
|
|
108
|
-
await worktreeGit.branch(["--set-upstream-to",
|
|
113
|
+
await worktreeGit.branch(["--set-upstream-to", `origin/${this.defaultBranch}`, this.defaultBranch]);
|
|
109
114
|
}
|
|
110
115
|
else {
|
|
111
116
|
// Create new branch tracking the remote branch
|
|
112
|
-
await bareGit.raw([
|
|
117
|
+
await bareGit.raw([
|
|
118
|
+
"worktree",
|
|
119
|
+
"add",
|
|
120
|
+
"--track",
|
|
121
|
+
"-b",
|
|
122
|
+
this.defaultBranch,
|
|
123
|
+
absoluteWorktreePath,
|
|
124
|
+
`origin/${this.defaultBranch}`,
|
|
125
|
+
]);
|
|
113
126
|
}
|
|
114
127
|
}
|
|
115
128
|
catch (error) {
|
|
116
129
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
117
130
|
// Check if error is because directory already exists
|
|
118
131
|
if (errorMessage.includes("already exists")) {
|
|
119
|
-
console.log(
|
|
132
|
+
console.log(`${this.defaultBranch} worktree directory already exists at '${absoluteWorktreePath}', skipping creation.`);
|
|
120
133
|
}
|
|
121
134
|
else {
|
|
122
135
|
// Fallback to simple add if tracking setup fails
|
|
123
|
-
console.warn(`Failed to create
|
|
136
|
+
console.warn(`Failed to create ${this.defaultBranch} worktree with tracking, using simple add: ${error}`);
|
|
124
137
|
try {
|
|
125
|
-
await bareGit.raw(["worktree", "add", absoluteWorktreePath,
|
|
138
|
+
await bareGit.raw(["worktree", "add", absoluteWorktreePath, this.defaultBranch]);
|
|
126
139
|
}
|
|
127
140
|
catch (fallbackError) {
|
|
128
141
|
const fallbackErrorMessage = fallbackError instanceof Error ? fallbackError.message : String(fallbackError);
|
|
129
142
|
if (fallbackErrorMessage.includes("already exists")) {
|
|
130
|
-
console.log(
|
|
143
|
+
console.log(`${this.defaultBranch} worktree directory already exists at '${absoluteWorktreePath}', skipping creation.`);
|
|
131
144
|
}
|
|
132
145
|
else {
|
|
133
146
|
throw fallbackError;
|
|
@@ -146,6 +159,9 @@ class GitService {
|
|
|
146
159
|
}
|
|
147
160
|
return this.git;
|
|
148
161
|
}
|
|
162
|
+
getDefaultBranch() {
|
|
163
|
+
return this.defaultBranch;
|
|
164
|
+
}
|
|
149
165
|
async fetchAll() {
|
|
150
166
|
const git = this.getGit();
|
|
151
167
|
console.log("Fetching latest data from remote...");
|
|
@@ -156,6 +172,32 @@ class GitService {
|
|
|
156
172
|
const branches = await git.branch(["-r"]);
|
|
157
173
|
return branches.all.filter((b) => b.startsWith("origin/")).map((b) => b.replace("origin/", ""));
|
|
158
174
|
}
|
|
175
|
+
async getRemoteBranchesWithActivity() {
|
|
176
|
+
const git = this.getGit();
|
|
177
|
+
// Use for-each-ref to get branch names with their last commit dates
|
|
178
|
+
const result = await git.raw([
|
|
179
|
+
"for-each-ref",
|
|
180
|
+
"--format=%(refname:short)|%(committerdate:iso8601)",
|
|
181
|
+
"refs/remotes/origin",
|
|
182
|
+
]);
|
|
183
|
+
const branches = [];
|
|
184
|
+
const lines = result
|
|
185
|
+
.trim()
|
|
186
|
+
.split("\n")
|
|
187
|
+
.filter((line) => line);
|
|
188
|
+
for (const line of lines) {
|
|
189
|
+
const [ref, dateStr] = line.split("|", 2);
|
|
190
|
+
if (ref && dateStr) {
|
|
191
|
+
const branch = ref.replace("origin/", "");
|
|
192
|
+
const lastActivity = new Date(dateStr);
|
|
193
|
+
// Skip if the date is invalid
|
|
194
|
+
if (!isNaN(lastActivity.getTime())) {
|
|
195
|
+
branches.push({ branch, lastActivity });
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return branches;
|
|
200
|
+
}
|
|
159
201
|
async addWorktree(branchName, worktreePath) {
|
|
160
202
|
const bareGit = (0, simple_git_1.default)(this.bareRepoPath);
|
|
161
203
|
// Use absolute path for worktree add to avoid relative path issues
|
|
@@ -267,6 +309,46 @@ class GitService {
|
|
|
267
309
|
const branchSummary = await git.branch();
|
|
268
310
|
return branchSummary.current;
|
|
269
311
|
}
|
|
312
|
+
async detectDefaultBranch(bareGit) {
|
|
313
|
+
try {
|
|
314
|
+
// Try to get the symbolic ref for origin/HEAD
|
|
315
|
+
const headRef = await bareGit.raw(["symbolic-ref", "refs/remotes/origin/HEAD"]);
|
|
316
|
+
// Extract branch name from refs/remotes/origin/main or refs/remotes/origin/master
|
|
317
|
+
const branch = headRef.trim().split("/").pop();
|
|
318
|
+
if (branch) {
|
|
319
|
+
return branch;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
catch {
|
|
323
|
+
// If that fails, try to set HEAD automatically
|
|
324
|
+
try {
|
|
325
|
+
await bareGit.raw(["remote", "set-head", "origin", "-a"]);
|
|
326
|
+
const headRef = await bareGit.raw(["symbolic-ref", "refs/remotes/origin/HEAD"]);
|
|
327
|
+
const branch = headRef.trim().split("/").pop();
|
|
328
|
+
if (branch) {
|
|
329
|
+
return branch;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
catch {
|
|
333
|
+
// If all else fails, try to detect from remote branches
|
|
334
|
+
try {
|
|
335
|
+
const remoteBranches = await bareGit.branch(["-r"]);
|
|
336
|
+
// Common default branch names in order of preference
|
|
337
|
+
const commonDefaults = ["main", "master", "develop", "trunk"];
|
|
338
|
+
for (const defaultName of commonDefaults) {
|
|
339
|
+
if (remoteBranches.all.some((branch) => branch === `origin/${defaultName}`)) {
|
|
340
|
+
return defaultName;
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
catch {
|
|
345
|
+
// Ignore and fall through to default
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
// Final fallback
|
|
350
|
+
return "main";
|
|
351
|
+
}
|
|
270
352
|
async getWorktrees() {
|
|
271
353
|
const bareGit = (0, simple_git_1.default)(this.bareRepoPath);
|
|
272
354
|
return this.getWorktreesFromBare(bareGit);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.service.js","sourceRoot":"","sources":["../../src/services/git.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"git.service.js","sourceRoot":"","sources":["../../src/services/git.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-sync.service.d.ts","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worktree-sync.service.d.ts","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,qBAAa,mBAAmB;IAGlB,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,UAAU,CAAa;gBAEX,MAAM,EAAE,MAAM;IAI5B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAqEb,kBAAkB;YAoBlB,iBAAiB;YAwCjB,0BAA0B;CAuCzC"}
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.WorktreeSyncService = void 0;
|
|
37
37
|
const fs = __importStar(require("fs/promises"));
|
|
38
38
|
const path = __importStar(require("path"));
|
|
39
|
+
const date_filter_1 = require("../utils/date-filter");
|
|
39
40
|
const retry_1 = require("../utils/retry");
|
|
40
41
|
const git_service_1 = require("./git.service");
|
|
41
42
|
class WorktreeSyncService {
|
|
@@ -65,8 +66,24 @@ class WorktreeSyncService {
|
|
|
65
66
|
await (0, retry_1.retry)(async () => {
|
|
66
67
|
console.log("Step 1: Fetching latest data from remote...");
|
|
67
68
|
await this.gitService.fetchAll();
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
let remoteBranches;
|
|
70
|
+
if (this.config.branchMaxAge) {
|
|
71
|
+
// Get branches with activity data and filter by age
|
|
72
|
+
const branchesWithActivity = await this.gitService.getRemoteBranchesWithActivity();
|
|
73
|
+
const filteredBranches = (0, date_filter_1.filterBranchesByAge)(branchesWithActivity, this.config.branchMaxAge);
|
|
74
|
+
remoteBranches = filteredBranches.map((b) => b.branch);
|
|
75
|
+
console.log(`Found ${branchesWithActivity.length} remote branches.`);
|
|
76
|
+
console.log(`After filtering by age (${(0, date_filter_1.formatDuration)(this.config.branchMaxAge)}): ${remoteBranches.length} branches.`);
|
|
77
|
+
if (branchesWithActivity.length > remoteBranches.length) {
|
|
78
|
+
const excludedCount = branchesWithActivity.length - remoteBranches.length;
|
|
79
|
+
console.log(` - Excluded ${excludedCount} stale branches.`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
// Use original method if no age filtering
|
|
84
|
+
remoteBranches = await this.gitService.getRemoteBranches();
|
|
85
|
+
console.log(`Found ${remoteBranches.length} remote branches.`);
|
|
86
|
+
}
|
|
70
87
|
await fs.mkdir(this.config.worktreeDir, { recursive: true });
|
|
71
88
|
// Get actual Git worktrees instead of just directories
|
|
72
89
|
const worktrees = await this.gitService.getWorktrees();
|
|
@@ -74,8 +91,8 @@ class WorktreeSyncService {
|
|
|
74
91
|
console.log(`Found ${worktrees.length} existing Git worktrees.`);
|
|
75
92
|
// Clean up orphaned directories
|
|
76
93
|
await this.cleanupOrphanedDirectories(worktrees);
|
|
77
|
-
const
|
|
78
|
-
await this.createNewWorktrees(remoteBranches, worktreeBranches,
|
|
94
|
+
const defaultBranch = this.gitService.getDefaultBranch();
|
|
95
|
+
await this.createNewWorktrees(remoteBranches, worktreeBranches, defaultBranch);
|
|
79
96
|
await this.pruneOldWorktrees(remoteBranches, worktreeBranches);
|
|
80
97
|
await this.gitService.pruneWorktrees();
|
|
81
98
|
console.log("Step 4: Pruned worktree metadata.");
|
|
@@ -89,10 +106,10 @@ class WorktreeSyncService {
|
|
|
89
106
|
console.log(`[${new Date().toISOString()}] Synchronization finished.\n`);
|
|
90
107
|
}
|
|
91
108
|
}
|
|
92
|
-
async createNewWorktrees(remoteBranches, existingWorktreeBranches,
|
|
109
|
+
async createNewWorktrees(remoteBranches, existingWorktreeBranches, defaultBranch) {
|
|
93
110
|
const newBranches = remoteBranches
|
|
94
111
|
.filter((b) => !existingWorktreeBranches.includes(b))
|
|
95
|
-
.filter((b) => b !==
|
|
112
|
+
.filter((b) => b !== defaultBranch);
|
|
96
113
|
if (newBranches.length > 0) {
|
|
97
114
|
console.log(`Step 2: Creating new worktrees for: ${newBranches.join(", ")}`);
|
|
98
115
|
for (const branchName of newBranches) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-sync.service.js","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,2CAA6B;AAE7B,0CAAuC;AAEvC,+CAA2C;AAK3C,MAAa,mBAAmB;IAGV;IAFZ,UAAU,CAAa;IAE/B,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAU,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,wCAAwC,CAAC,CAAC;QAElF,MAAM,YAAY,GAAiB;YACjC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC;YAChD,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,IAAI,IAAI;YACzD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,KAAK;YAClD,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,iBAAiB,IAAI,CAAC;YAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC1B,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,YAAY,YAAY,EAAE,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAClD,CAAC;SACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAA,aAAK,EAAC,KAAK,IAAI,EAAE;gBACrB,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAC3D,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAEjC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"worktree-sync.service.js","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,MAAM;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;CAC1B"}
|
package/dist/utils/cli.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export interface CliOptions extends Partial<Config> {
|
|
|
4
4
|
filter?: string;
|
|
5
5
|
list?: boolean;
|
|
6
6
|
bareRepoDir?: string;
|
|
7
|
+
branchMaxAge?: string;
|
|
7
8
|
}
|
|
8
9
|
export declare function parseArguments(): CliOptions;
|
|
9
10
|
export declare function isInteractiveMode(config: Partial<Config>): boolean;
|
package/dist/utils/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,IAAI,UAAU,CAgE3C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAElE;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA4B5D"}
|
package/dist/utils/cli.js
CHANGED
|
@@ -51,6 +51,11 @@ function parseArguments() {
|
|
|
51
51
|
type: "boolean",
|
|
52
52
|
description: "Run the sync process once and then exit, without scheduling.",
|
|
53
53
|
default: false,
|
|
54
|
+
})
|
|
55
|
+
.option("branchMaxAge", {
|
|
56
|
+
alias: "a",
|
|
57
|
+
type: "string",
|
|
58
|
+
description: "Maximum age of branches to sync (e.g., '30d', '6m', '1y').",
|
|
54
59
|
})
|
|
55
60
|
.help()
|
|
56
61
|
.alias("help", "h")
|
|
@@ -64,6 +69,7 @@ function parseArguments() {
|
|
|
64
69
|
cronSchedule: argv.cronSchedule,
|
|
65
70
|
runOnce: argv.runOnce,
|
|
66
71
|
bareRepoDir: argv.bareRepoDir,
|
|
72
|
+
branchMaxAge: argv.branchMaxAge,
|
|
67
73
|
};
|
|
68
74
|
}
|
|
69
75
|
function isInteractiveMode(config) {
|
|
@@ -85,6 +91,9 @@ function reconstructCliCommand(config) {
|
|
|
85
91
|
if (config.runOnce) {
|
|
86
92
|
args.push("--runOnce");
|
|
87
93
|
}
|
|
94
|
+
if (config.branchMaxAge) {
|
|
95
|
+
args.push(`--branchMaxAge "${config.branchMaxAge}"`);
|
|
96
|
+
}
|
|
88
97
|
return `${executable} ${args.join(" ")}`;
|
|
89
98
|
}
|
|
90
99
|
//# sourceMappingURL=cli.js.map
|
package/dist/utils/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function parseDuration(durationStr: string): number | null;
|
|
2
|
+
export declare function filterBranchesByAge(branches: {
|
|
3
|
+
branch: string;
|
|
4
|
+
lastActivity: Date;
|
|
5
|
+
}[], maxAge: string): {
|
|
6
|
+
branch: string;
|
|
7
|
+
lastActivity: Date;
|
|
8
|
+
}[];
|
|
9
|
+
export declare function formatDuration(durationStr: string): string;
|
|
10
|
+
//# sourceMappingURL=date-filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-filter.d.ts","sourceRoot":"","sources":["../../src/utils/date-filter.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBhE;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,IAAI,CAAA;CAAE,EAAE,EAClD,MAAM,EAAE,MAAM,GACb;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,IAAI,CAAA;CAAE,EAAE,CAU1C;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAkB1D"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseDuration = parseDuration;
|
|
4
|
+
exports.filterBranchesByAge = filterBranchesByAge;
|
|
5
|
+
exports.formatDuration = formatDuration;
|
|
6
|
+
function parseDuration(durationStr) {
|
|
7
|
+
const match = durationStr.match(/^(\d+)([hdwmy])$/);
|
|
8
|
+
if (!match) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
const value = parseInt(match[1], 10);
|
|
12
|
+
const unit = match[2];
|
|
13
|
+
const multipliers = {
|
|
14
|
+
h: 60 * 60 * 1000, // hours
|
|
15
|
+
d: 24 * 60 * 60 * 1000, // days
|
|
16
|
+
w: 7 * 24 * 60 * 60 * 1000, // weeks
|
|
17
|
+
m: 30 * 24 * 60 * 60 * 1000, // months (approximate)
|
|
18
|
+
y: 365 * 24 * 60 * 60 * 1000, // years (approximate)
|
|
19
|
+
};
|
|
20
|
+
return value * multipliers[unit];
|
|
21
|
+
}
|
|
22
|
+
function filterBranchesByAge(branches, maxAge) {
|
|
23
|
+
const maxAgeMs = parseDuration(maxAge);
|
|
24
|
+
if (maxAgeMs === null) {
|
|
25
|
+
console.warn(`Invalid duration format: ${maxAge}. Using all branches.`);
|
|
26
|
+
return branches;
|
|
27
|
+
}
|
|
28
|
+
const cutoffDate = new Date(Date.now() - maxAgeMs);
|
|
29
|
+
return branches.filter(({ lastActivity }) => lastActivity >= cutoffDate);
|
|
30
|
+
}
|
|
31
|
+
function formatDuration(durationStr) {
|
|
32
|
+
const match = durationStr.match(/^(\d+)([hdwmy])$/);
|
|
33
|
+
if (!match) {
|
|
34
|
+
return durationStr;
|
|
35
|
+
}
|
|
36
|
+
const value = parseInt(match[1], 10);
|
|
37
|
+
const unit = match[2];
|
|
38
|
+
const unitNames = {
|
|
39
|
+
h: value === 1 ? "hour" : "hours",
|
|
40
|
+
d: value === 1 ? "day" : "days",
|
|
41
|
+
w: value === 1 ? "week" : "weeks",
|
|
42
|
+
m: value === 1 ? "month" : "months",
|
|
43
|
+
y: value === 1 ? "year" : "years",
|
|
44
|
+
};
|
|
45
|
+
return `${value} ${unitNames[unit]}`;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=date-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-filter.js","sourceRoot":"","sources":["../../src/utils/date-filter.ts"],"names":[],"mappings":";;AAAA,sCAkBC;AAED,kDAaC;AAED,wCAkBC;AArDD,SAAgB,aAAa,CAAC,WAAmB;IAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtB,MAAM,WAAW,GAA2B;QAC1C,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ;QAC3B,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO;QAC/B,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ;QACpC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,uBAAuB;QACpD,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,sBAAsB;KACrD,CAAC;IAEF,OAAO,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,mBAAmB,CACjC,QAAkD,EAClD,MAAc;IAEd,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,4BAA4B,MAAM,uBAAuB,CAAC,CAAC;QACxE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC;IAEnD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,IAAI,UAAU,CAAC,CAAC;AAC3E,CAAC;AAED,SAAgB,cAAc,CAAC,WAAmB;IAChD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtB,MAAM,SAAS,GAA2B;QACxC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACjC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;QAC/B,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACjC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;QACnC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;KAClC,CAAC;IAEF,OAAO,GAAG,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AACvC,CAAC"}
|
package/package.json
CHANGED