🐛 fix(vscode): 摘修复按文件改动认已摘过,不靠标题
This commit is contained in:
1 parent
beb7750eac
commit
0214ca1ab5
3 files changed
+125
-8
No files matched your search
@@ -147,4 +147,46 @@ describe('集成', () => {
|
||||
expect(map.get(a)).toEqual({ number: 260, title: '连续包月会员订阅体系' })
|
||||
expect(map.get(b)).toEqual({ number: 260, title: '连续包月会员订阅体系' })
|
||||
})
|
||||
it('发布分支把同一改动拆成两条,即使标题不同也不再列出', async () => {
|
||||
fx = await setup()
|
||||
await cutRelease({ cwd: fx.repo, devBranch: 'main', branch: 'release/2026-08-31' })
|
||||
writeFileSync(path.join(fx.peer, 'a.txt'), 'A\n')
|
||||
writeFileSync(path.join(fx.peer, 'b.txt'), 'B\n')
|
||||
git(fx.peer, ['add', 'a.txt', 'b.txt'])
|
||||
git(fx.peer, ['commit', '-m', 'fix(jobs): 一次性命令收口'])
|
||||
commit(fx.peer, 'c.txt', 'c', 'feat: other')
|
||||
git(fx.peer, ['push', 'origin', 'main'])
|
||||
git(fx.peer, ['fetch'])
|
||||
git(fx.peer, ['checkout', '-b', 'release/2026-08-31', 'origin/release/2026-08-31'])
|
||||
writeFileSync(path.join(fx.peer, 'a.txt'), 'A\n')
|
||||
git(fx.peer, ['add', 'a.txt'])
|
||||
git(fx.peer, ['commit', '-m', 'part a'])
|
||||
writeFileSync(path.join(fx.peer, 'b.txt'), 'B\n')
|
||||
git(fx.peer, ['add', 'b.txt'])
|
||||
git(fx.peer, ['commit', '-m', 'part b'])
|
||||
git(fx.peer, ['push', 'origin', 'release/2026-08-31'])
|
||||
git(fx.repo, ['fetch', 'origin'])
|
||||
const list = await listUnreleasedCommits({ cwd: fx.repo, devBranch: 'main', current: 'release/2026-08-31' })
|
||||
expect(list.map(c => c.subject)).toEqual(['feat: other'])
|
||||
const s = await getReleaseStatus({ cwd: fx.repo, devBranch: 'main', prefix: 'release/' })
|
||||
expect(s.unreleased).toBe(1)
|
||||
})
|
||||
it('标题相同但改的文件不同,仍算未发布', async () => {
|
||||
fx = await setup()
|
||||
await cutRelease({ cwd: fx.repo, devBranch: 'main', branch: 'release/2026-08-31' })
|
||||
git(fx.peer, ['fetch'])
|
||||
git(fx.peer, ['checkout', '-b', 'release/2026-08-31', 'origin/release/2026-08-31'])
|
||||
writeFileSync(path.join(fx.peer, 'a.txt'), 'release-a\n')
|
||||
git(fx.peer, ['add', 'a.txt'])
|
||||
git(fx.peer, ['commit', '-m', 'fix(jobs): 一次性命令收口'])
|
||||
git(fx.peer, ['push', 'origin', 'release/2026-08-31'])
|
||||
git(fx.peer, ['checkout', 'main'])
|
||||
writeFileSync(path.join(fx.peer, 'b.txt'), 'main-b\n')
|
||||
git(fx.peer, ['add', 'b.txt'])
|
||||
git(fx.peer, ['commit', '-m', 'fix(jobs): 一次性命令收口'])
|
||||
git(fx.peer, ['push', 'origin', 'main'])
|
||||
git(fx.repo, ['fetch', 'origin'])
|
||||
const list = await listUnreleasedCommits({ cwd: fx.repo, devBranch: 'main', current: 'release/2026-08-31' })
|
||||
expect(list.map(c => c.subject)).toEqual(['fix(jobs): 一次性命令收口'])
|
||||
})
|
||||
})
|
||||
Reference in new issue
Block a user