Skip to content

Rename default branch from master to main #135

@brendan1226

Description

@brendan1226

Cross-repo tracking: brendan1226-20260416-1338

Sibling issues in the same effort:

Rationale

Industry convention for the default git branch has shifted from master to main. GitHub defaults all new repos to main and provides a native rename tool that auto-redirects open PRs and creates a master ref alias so existing forks keep working.

Of the five Libki repos, libki-print-station already uses main. The other four — including this one — remain on master. This inconsistency is friction for contributors and has already required per-repo conditionals in an emerging ecosystem coding-guidelines doc.

Scope in this repo

Two references in the AppVeyor CI config:

  • appveyor.yml:11- master (branch filter under branches.only)
  • appveyor.yml:43branch: master # release from master branch only

Migration steps

  1. GitHub → Settings → Branches → rename master to main. GitHub's native rename tool handles open PRs, issue references, and creates a ref alias so existing clones / forks continue to work.
  2. Merge the follow-up PR updating appveyor.yml.

AppVeyor-specific note

AppVeyor follows whichever branch name is configured in its appveyor.yml. Unlike GitHub Actions, AppVeyor does not auto-follow a GitHub rename — CI will silently stop firing on the renamed default branch until the .yml is updated.

CI transition note

To avoid a gap in CI during the rename window, accept both branch names in appveyor.yml for a short period:

branches:
  only:
    - master
    - main

Drop master from the list once the rename has settled.

Contributor migration (after the rename)

git branch -m master main
git fetch origin
git branch -u origin/main main
git remote set-head origin -a

No code behavior changes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions