@mikaelkaron/skills-cherry-pick-filter 0.5.0 → 0.5.1
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/oclif.manifest.json +65 -0
- package/package.json +5 -2
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"commands": {
|
|
3
|
+
"cherry-pick-filter": {
|
|
4
|
+
"aliases": [],
|
|
5
|
+
"args": {
|
|
6
|
+
"targetBranch": {
|
|
7
|
+
"description": "Branch to cherry-pick code commits onto",
|
|
8
|
+
"name": "targetBranch",
|
|
9
|
+
"required": true
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"description": "Incrementally cherry-picks commits from the current branch onto a target branch, skipping commits where all changed files match filtered path prefixes. Mixed commits (code + filtered files in the same commit) are detected by analyzing all commits first, then reported together, and the operation is halted until the user resolves them.\n\nAll human-readable output goes to stderr. stdout emits one picked commit SHA per line — but only when piped (not a TTY).",
|
|
13
|
+
"examples": [
|
|
14
|
+
{
|
|
15
|
+
"description": "Sync to beta, filtering out .planning/ commits",
|
|
16
|
+
"command": "<%= config.bin %> <%= command.id %> beta --filter .planning/"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"description": "Filter multiple path prefixes",
|
|
20
|
+
"command": "<%= config.bin %> <%= command.id %> beta --filter .planning/ --filter .agents/"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"description": "Dry run: analyse without cherry-picking",
|
|
24
|
+
"command": "<%= config.bin %> <%= command.id %> beta --filter .planning/ --dry-run"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"description": "Capture picked SHAs",
|
|
28
|
+
"command": "<%= config.bin %> <%= command.id %> beta --filter .planning/ | xargs git log --oneline"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"flags": {
|
|
32
|
+
"filter": {
|
|
33
|
+
"description": "Path prefix to filter out. Commits where ALL files match are skipped; commits where SOME files match are aborted as mixed.",
|
|
34
|
+
"name": "filter",
|
|
35
|
+
"required": true,
|
|
36
|
+
"hasDynamicHelp": false,
|
|
37
|
+
"multiple": true,
|
|
38
|
+
"type": "option"
|
|
39
|
+
},
|
|
40
|
+
"dry-run": {
|
|
41
|
+
"description": "Analyse commits without cherry-picking",
|
|
42
|
+
"name": "dry-run",
|
|
43
|
+
"allowNo": false,
|
|
44
|
+
"type": "boolean"
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"hasDynamicHelp": false,
|
|
48
|
+
"hiddenAliases": [],
|
|
49
|
+
"id": "cherry-pick-filter",
|
|
50
|
+
"pluginAlias": "@mikaelkaron/skills-cherry-pick-filter",
|
|
51
|
+
"pluginName": "@mikaelkaron/skills-cherry-pick-filter",
|
|
52
|
+
"pluginType": "core",
|
|
53
|
+
"strict": true,
|
|
54
|
+
"summary": "Sync a working branch to a clean target branch by cherry-picking commits that don't touch filtered path prefixes.",
|
|
55
|
+
"enableJsonFlag": false,
|
|
56
|
+
"isESM": true,
|
|
57
|
+
"relativePath": [
|
|
58
|
+
"dist",
|
|
59
|
+
"commands",
|
|
60
|
+
"cherry-pick-filter.js"
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"version": "0.5.1"
|
|
65
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikaelkaron/skills-cherry-pick-filter",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"bin": {
|
|
5
5
|
"mks-cherry-pick-filter": "bin/run.js"
|
|
6
6
|
},
|
|
@@ -15,9 +15,11 @@
|
|
|
15
15
|
},
|
|
16
16
|
"scripts": {
|
|
17
17
|
"build": "tsc",
|
|
18
|
-
"prepublishOnly": "npm run build",
|
|
18
|
+
"prepublishOnly": "npm run build && oclif manifest .",
|
|
19
|
+
"postpublish": "rm -f oclif.manifest.json",
|
|
19
20
|
"pretest": "npm run build",
|
|
20
21
|
"test": "node --experimental-strip-types --test 'test/**/*.test.ts'",
|
|
22
|
+
"test:coverage": "node --experimental-strip-types --experimental-test-coverage --test 'test/**/*.test.ts'",
|
|
21
23
|
"test:types": "tsc -p test/tsconfig.json"
|
|
22
24
|
},
|
|
23
25
|
"dependencies": {
|
|
@@ -26,6 +28,7 @@
|
|
|
26
28
|
"devDependencies": {
|
|
27
29
|
"@oclif/test": "^4.1.18",
|
|
28
30
|
"@types/node": "^22",
|
|
31
|
+
"oclif": "^4",
|
|
29
32
|
"typescript": "^5"
|
|
30
33
|
},
|
|
31
34
|
"oclif": {
|