github-community-projects / github-community-projects/private-mirrors
Enable branch creation as part of syncing
- Dominant language
- TypeScript
- Stars
- 196
- Forks
- 41
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 4
Description
### Is your feature request related to a problem?
In cases where the fork branch that corresponds to a mirror has been renamed or deleted, the syncing function will fail to execute instead of creating the desired branch.
### Describe the solution you'd like
During syncing, any missing fork branch should be recreated to allow the sync to continue and provide a way for users to reset a conflicted fork branch. This change would also make it unnecessary to create the fork branch during mirror creation so that logic should be removed.
### Describe alternatives you've considered
Alternatively the deletion or renaming of a fork branch could be disallowed through protections on the fork or could result in the corresponding mirror being renamed / deleted.
### Additional context
There is currently a bug detailed in #445 that makes this situation more common.
Contributor guide
Research direction
Start by tracing the syncing flow and the mirror-creation flow, then review issue #445 for the related branch condition. Done means syncing recreates a missing fork branch, can continue afterward, and no longer creates that branch during mirror creation; verify both paths with the repository's existing checks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, typescript
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100