20 Commits

Author SHA1 Message Date
Philip Gai
8d10c36b44 feat: add --batch-size flag to push refs in batches (#173)
Some checks failed
CodeQL / Analyze (go) (push) Has been cancelled
licenses check / licensed check (push) Has been cancelled
goreleaser / goreleaser (push) Has been cancelled
Close inactive issues / close-issues (push) Has been cancelled
* feat: add --batch-size flag to push refs in batches

Add support for pushing refs in smaller batches to avoid server-side
limits and timeouts when syncing large repositories with many tags/branches.

- Add --batch-size flag (default 0 = no batching, original behavior)
- Add References() method to GitRepository interface
- Implement collectRefs() and pushRefsInBatches() helpers
- Add MinBatchSize validation (must be 0 or >= 10)

This addresses issues where repositories with 1000+ refs fail to sync
to GHES with 'command error on refs/heads/<branch>: failed' errors.

* test: add tests for batch-size flag and push batching functionality

* fix: pin tool dependencies to versions compatible with Go 1.21

* ci: fix docker compose v2 syntax and update setup-ruby action

* refactor: address PR review feedback

- Remove unused RefInfo struct from git.go
- Remove redundant pushedAny variable tracking in pushRefsInBatches
- Remove incomplete TestPushRefsInBatches_PartialUpToDate test (already covered by existing test case)

* docs: add --batch-size flag to README
2026-01-27 15:19:55 -06:00
boxofyellow
766ee9a4e6 Update contribution note in README.md
Clarified the status of contributions to the GitHub action and provided guidance on following the public roadmap for updates.
2025-09-05 16:10:19 -04:00
Ben De St Paer-Gotch
6f241797e1 Update README.md 2025-06-06 11:51:27 +01:00
Ajaykn-mac
4f5ae77ae9 update readme with moving optional argument 2022-09-26 13:12:54 +09:00
Denys Zhuravel
4b5fb2c8ad Add a note about the site_admin scope
* add a note to the readme
* add a note to the autogenerated cli help
2022-09-21 12:05:27 +00:00
Denys Zhuravel
a7d588cf7c Don't enable the impersonation by default.
* Require the impersonation to be explicit with the --actions-admin-user flag
* Reword the log messages to look the same way the existing messages are
2022-09-20 09:48:29 +00:00
Denys Zhuravel
c32265a4df Add actions-admin-user to readme 2022-09-09 09:35:07 +00:00
Niket Parikh
e59ec6da57 Fix small typo in README.md 2022-07-27 14:41:47 -07:00
Martin Costello
1854c6ae2d Fix typo
Fix another typo.

Co-authored-by: Ajay <40024974+ajaykn@users.noreply.github.com>
2022-06-01 07:04:43 +01:00
Martin Costello
400f484e15 Fix typos
Fix a number of minor typos.
2022-05-31 14:38:07 +01:00
Hollow Man
922ebefddc Fix typo
seperate -> separate
2021-02-15 15:08:23 +08:00
Sho Mizutani
8cf67b3daa Update README.md
Co-authored-by: Josh Gross <joshmgross@github.com>
2021-02-14 00:51:03 +09:00
Sho Mizutani
fdb1a90cd0 Mention the workflow scope 2021-02-12 14:03:58 +09:00
Chris Sidi
d39e48f007 Create org if necessary 2020-09-22 13:57:42 -04:00
Chris Sidi
4e5bb47042 Better error message when org doesn't exist
* Produce a better error message when the destination org doesn't exist.
* Support pushing to the authenticated user's account

**Before**
`error creating github repository `synced-actions/setup-node`: error creating repository: POST http://my-ghes-hostname/api/v3/orgs/synced-actions/repos: 404 Not Found []`

**After**
`error creating github repository `synced-actions/setup-node`: Organization `synced-actions` doesn't exist at http://my-ghes-hostname. You must create it first.`

https://github.com/actions/actions-sync/issues/1
2020-09-21 22:08:06 -04:00
Chris Sidi
8862a56600 Honor repo flags on sync and push 2020-09-18 17:15:16 -04:00
Andy McKay
216045d0eb Update README.md
Less words, less grammar errors.
2020-07-09 10:59:29 -07:00
Andy McKay
de2c7907a1 Update README.md 2020-07-08 15:39:53 -07:00
Andy McKay
dc659980cd update the readme a bit 2020-07-08 14:50:49 -07:00
Anthony Sterling
f7954c5ebf Rename project to actions-sync 2020-07-02 19:36:10 +01:00