mirror of
https://github.com/firstsun-dev/git-files-sync.git
synced 2026-07-22 17:20:30 +00:00
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>
2.9 KiB
2.9 KiB
GitHub Actions Workflows
This project includes automated workflows for continuous integration and releases.
Workflows
1. Check (.github/workflows/check.yml)
Runs on every push and pull request to main/master/develop branches.
Jobs:
- Lint: Runs ESLint to check code quality
- Test: Runs the test suite with coverage
- Build: Builds the plugin and uploads artifacts
Triggers:
- Push to main, master, or develop branches
- Pull requests to main, master, or develop branches
2. Auto Release (.github/workflows/auto-release.yml)
Automatically bumps version, creates a tag, and publishes a release.
How to use:
- Go to GitHub → Actions → Auto Release
- Click "Run workflow"
- Select version bump type:
- patch: Bug fixes (1.0.0 → 1.0.1)
- minor: New features (1.0.0 → 1.1.0)
- major: Breaking changes (1.0.0 → 2.0.0)
- Click "Run workflow"
What it does:
- Runs tests
- Bumps version in package.json, manifest.json, and versions.json
- Updates CHANGELOG.md
- Commits and pushes changes
- Creates and pushes a git tag
- Creates a GitHub release
- Uploads main.js, manifest.json, and styles.css
3. Release (.github/workflows/release.yml)
Triggered when you manually push a tag.
How to use:
# Create and push a tag
git tag 1.0.1
git push origin 1.0.1
What it does:
- Runs tests
- Builds the plugin
- Creates a GitHub release
- Uploads release assets
Recommended Workflow
For Regular Development
- Make changes and commit to a feature branch
- Create a pull request to main/master
- The Check workflow will run automatically
- Merge when all checks pass
For Releases
Option A: Automatic (Recommended)
- Go to GitHub Actions → Auto Release
- Select version bump type
- Click "Run workflow"
- Done! The release is created automatically
Option B: Manual
- Update version manually:
npm run version - Update CHANGELOG.md
- Commit changes:
git add . git commit -m "chore: bump version to 1.0.1" git push - Create and push tag:
git tag 1.0.1 git push origin 1.0.1 - The Release workflow will create the GitHub release
Build Artifacts
After each successful build in the Check workflow, artifacts are uploaded and available for 7 days:
- main.js
- manifest.json
- styles.css
You can download these from the Actions tab → Select a workflow run → Artifacts section.
Troubleshooting
Workflow fails on test
npm run test
Fix any failing tests before releasing.
Workflow fails on build
npm run build
Ensure the build succeeds locally.
Permission denied errors
Make sure the repository has the correct permissions:
- Settings → Actions → General → Workflow permissions
- Select "Read and write permissions"
- Check "Allow GitHub Actions to create and approve pull requests"