Commit graph

40 commits

Author SHA1 Message Date
ClaudiaFang
a27d3fdba5 fix: enable automatic versioning and sync manifest to 1.1.0 2026-04-24 18:32:29 +00:00
ClaudiaFang
8ec25252d9 chore: prepare for version resync 2026-04-24 18:32:05 +00:00
ClaudiaFang
17c4824340
Merge pull request #6 from firstsun-dev/worktree-ui-name
fix: Trigger release to publish updated manifest
2026-04-25 02:10:03 +08:00
ClaudiaFang
fc94914bfe fix: trigger release to publish updated manifest 2026-04-24 18:08:53 +00:00
ClaudiaFang
60211627b2
Merge pull request #4 from firstsun-dev/worktree-ui-name
chore: Sync package.json description with manifest.json
2026-04-25 02:05:13 +08:00
ClaudiaFang
7767dd655a chore: sync package.json description with manifest.json 2026-04-24 18:01:56 +00:00
ClaudiaFang
4cd5b26937
Merge pull request #3 from firstsun-dev/worktree-ui-name
docs & ui: Add UI screenshots and fix diff view background color
2026-04-25 01:55:22 +08:00
ClaudiaFang
8c571e6a8c docs: add UI screenshots and correct diff view background color 2026-04-24 17:54:03 +00:00
ClaudiaFang
cab60ad9fa docs: overhaul README and add Traditional Chinese usage guide 2026-04-24 17:33:19 +00:00
ClaudiaFang
282e4bfc7b style: improve RWD and fix button layouts 2026-04-24 17:23:52 +00:00
ClaudiaFang
325e68b89a
Merge pull request #2 from firstsun-dev/worktree-org-repo
feat: Support .gitignore filtering and GitHub-style diff viewer
2026-04-24 20:55:39 +08:00
ClaudiaFang
fb9b22a9e1 fix: gitignore support for subfolder vaults and resolve lint warnings 2026-04-24 12:52:43 +00:00
ClaudiaFang
cbc55d502d feat: Support .gitignore filtering and GitHub-style diff viewer 2026-04-24 12:41:36 +00:00
ClaudiaFang
5d9cd3345d Fix syncing of hidden files inside unindexed directories 2026-04-24 12:32:22 +00:00
ClaudiaFang
cb1539bd46 docs: update guide and remove garbage 2026-04-24 12:16:51 +00:00
tianyao
32df4fd82b ci: only include zip file in release assets and artifacts
Remove individual files (main.js, manifest.json, styles.css) from
release assets and build artifacts. Only keep the zip package.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:42:45 +00:00
tianyao
bc84e98e19 ci(check): add zip package to feature branch artifacts
Create zip file with format: git-files-push-{version}-{branch}.zip
for feature branch builds.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:41:52 +00:00
tianyao
0107749d71 feat: initial release
Initial release of git-files-push plugin with GitHub and GitLab support.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:40:09 +00:00
tianyao
76c741df03 ci(release): add zip package to release assets
Create a zip file containing plugin files (main.js, manifest.json, styles.css)
with format: git-files-push-{version}.zip

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:39:29 +00:00
tianyao
e298ec130a refactor(ci): simplify workflows - feature vs production branches
- Feature branches: check.yml runs lint+test+build with artifact upload
- Production branches (master): semantic-release.yml runs lint+test+build+release
- Remove unused auto-release.yml and release.yml workflows

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:35:03 +00:00
tianyao
6f1925af44 fix(release): remove git plugin to avoid branch protection conflicts
Remove @semantic-release/git plugin from semantic-release configuration
to prevent conflicts with branch protection rules. For Obsidian plugins,
we only need GitHub releases with assets, not version commits back to repo.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:33:07 +00:00
tianyao
423ca4165a fix(release): add conventional-changelog-conventionalcommits dependency
Add missing conventional-changelog-conventionalcommits package required
by semantic-release for commit analysis.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:31:25 +00:00
tianyao
c59ad0a5ec fix(test): add @vitest/coverage-v8 dependency
Add missing @vitest/coverage-v8 package required for running tests
with coverage in CI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:30:49 +00:00
tianyao
29f55a14ec fix(deps): update esbuild to 0.28.0 to satisfy vite peer dependency
Update esbuild from 0.25.5 to 0.28.0 to meet vite's peer dependency
requirement (^0.27.0 || ^0.28.0). This fixes package-lock.json sync
issues in CI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:29:41 +00:00
tianyao
bbdda32d00 fix(ci): update all workflows to use Node.js 22
Update Node.js version from 20 to 22 to meet semantic-release
dependency requirements (requires Node.js 22.14.0+ or 24.10.0+).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:27:18 +00:00
tianyao
28913a6297 fix(ci): update all workflows to use Node.js 20
Update Node.js version from 18 to 20 in all GitHub Actions workflows
to meet dependency requirements. This fixes CI failures caused by
packages requiring Node.js 20+.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 04:25:42 +00:00
ClaudiaFang
d5539434dc
feat(core,ui,ci,docs): add GitHub support, sync status view, batch operations, and CI/CD workflows (#1)
Major feature release including:
- GitHub service support alongside GitLab
- Sync status view with visual diff
- Batch push/pull operations
- Conflict resolution modal
- Vault folder filtering
- File rename detection
- Complete CI/CD workflows (check, auto-release, semantic-release)
- Comprehensive documentation (CHANGELOG, COMPLIANCE, RELEASE guides)

Co-authored-by: tianyao <tianyao@heavendev01.royal-powan.ts.net>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 11:03:05 +08:00
Tianyao
b354f651cf fix(sync): implement robust sync diagnostics with proper TS types 2026-04-02 20:07:20 +08:00
Tianyao
8893396bff fix(gitlab): add Project ID encoding and enhanced diagnostics 2026-04-02 20:01:55 +08:00
Tianyao
ce07e0b18d fix(gitlab): encode projectId and improve error diagnostics 2026-04-02 19:59:09 +08:00
Tianyao
c2a6bb5fba perf(sync): optimize GitLab push by avoiding redundant getFile calls 2026-04-02 19:55:41 +08:00
Tianyao
b4bc25a91c feat(sync): improve error reporting and file existence check 2026-04-02 19:51:14 +08:00
Tianyao
6161bd75cd fix(build): resolve dependencies, fix Vitest 4 mocking, and handle file existence 2026-04-02 19:50:43 +08:00
tianyao
8ea6edf51e docs: update CLAUDE.md with test command and cost optimization rules
- Add 'npm run test' to development commands.
- Include 'Cost Optimization' rule for using Haiku subagents.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-01 17:16:46 +00:00
tianyao
c7ba14cb9e feat: add rootPath setting and test connection button
- Implement rootPath prefixing for GitLab API paths.
- Add 'Test connection' button in settings UI with status feedback.
- Remove debug console logs from main.ts.
- Align vitest dependencies in package.json.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 17:14:55 +00:00
tianyao
cccf096103 feat: implement rootPath setting and Test connection button
- Added rootPath to GitLabFilesPushSettings and DEFAULT_SETTINGS
- Implemented testConnection in GitLabService to verify credentials
- Added rootPath support to GitLabService API URL generation
- Added UI fields for rootPath and Test connection button in settings tab
- Updated tests to include rootPath in mock settings and services

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-01 17:13:12 +00:00
tianyao
b472594d31 task(gitlab-service): enhance getFile robustness and handle 404
- Update getFile to return empty content and sha on 404
- Use presence of sha to determine if push should be POST or PUT
- Fix test setup for Obsidian TFile mock
- Handle ESLint and TypeScript issues in tests and sync manager

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 16:45:55 +00:00
tianyao
362def7cd3 feat: integrate SyncConflictModal into SyncManager
- Implement conflict detection in pushFile and pullFile using SHA comparison.
- Use SyncConflictModal to prompt users for manual resolution ('Use local' or 'Use remote').
- Added unit tests in sync-manager.test.ts to verify conflict handling logic.
- Fixed linting issues related to unhandled promises and mock type safety.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 16:43:10 +00:00
tianyao
bb80936834 Implement conflict detection in SyncManager using syncMetadata
- Add SHA comparison in pushFile to detect remote changes before pushing
- Update syncMetadata (lastSyncedSha) after successful push and pull
- Add comprehensive test cases for conflict scenarios and metadata updates
- Use syncMetadata to track state and prevent overwriting remote work

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 16:40:29 +00:00
ClaudiaFang
b620e9eb40
Initial commit 2026-04-01 00:23:18 +08:00