From Fedora Project Wiki

Revision as of 10:27, 1 December 2020 by Till (talk | contribs) (→‎Scope: use sub sections for phases)

Welcoming-language-for-git-repos

Summary

The Fedora community strives to be open and welcoming. Some language around our git repositories could be improved to be more welcoming. Currently many of our git repositories use 'master' as the default branch. This change will move many of those repostories to use a 'main' branch as default. This small bit of naming adjustment will help show that Fedora is committed to being welcoming to newcomers and existing community members alike.

Owner

Current status

  • Targeted release: Fedora 34
  • Last updated: 2020-12-01
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

The Fedora project controls a number of git repositories. This change will move the default branch (that is, the git branch used when nothing is specified) from 'master' to 'main'. Existing git clones will need to pull to get the changed default branch. Existing PR's against the 'master' branch will need to be rebased against the 'main' branch. Documentation will be updated.

Feedback

Benefit to Fedora

The Fedora project will be a more welcoming place for new contributors.


Scope

This change will take place in a number of phases:

Phase0 - 2020-12-14

  A guide will be published to explain how maintainers/project managers can change the default
  branch on pagure.io, which they can then do based in their projects desires.

Phase1 - 2020-12-15

The following repos will be switched:

 src.fedoraproject.org/flatpacks/*
 pagure.io:
   releng
   releng/*
   fedora-comps
   fedora-kickstarts
   fedora-infrastructure
   fedora-lorax-templates
   fedora-mediawikitheme
   fedora-packager
   fedora-infra/*
   infra-docs
   koji-fedmsg-plugin
   workstation-ostree-config
   pungi-fedora
 github.com
   fedora-infra/*

Phase2 - 2021-01-13

  src.fedoraproject.org/*
  pagure.io default for new projects will be changed to 'main'
  • Proposal owners:
  Switching all above listed projects git repos to use 'main'
  Deleting the 'master' branch
  Announcing when changes have been made on devel-announce / other lists.
  • Other developers:
  Other developers are encouraged to change their upstream projects on pagure.io, github or gitlab.
  • Release engineering:
  Releng will adjust any scripts that assume 'master' branch to use 'main' instead. The list includes and maybe few more
  update-critpath.py
  block_retired.py
  update-docs.sh
  find_unblocked_orphans.py
  mass-rebuild-second-run.py
  adjust-eol-modules.py
  adjust-eol-modules.py
  adjust-eol-modules.py
  adjust-eol.py
  create-new-release-branches.py
  create-branch.py
  adjust-eol-all.py
  check-unretirement.py
  mass-rebuild-special.py
  need-rebuild.py
  distgit-branch-unused.py
  create-new-release-branches.py
  • Policies and guidelines: N/A
  • Trademark approval: N/A
  • Alignment with Objectives:

Upgrade/compatibility impact

Users with old checkouts will need to update their git configuration or re-clone repositories that have changed before they can see any new changes.

Repos used to build content for docs.fedoraproject.org can change the default git branch, but the Antora module version (in antora.yml) should remain master pending support for alternate "unversioned" versions upstream.

How To Test

  1. git clone <one of the listed repositories>
  2. cd <repositoryname>
  3. git branch

should return: * main

User Experience

Users and developers will see more welcoming language and that the fedora project expended effort to be more welcoming to them.

Dependencies

none

Contingency Plan

  • Contingency mechanism: Revert repositories, scripts, and docs back to the unwelcoming 'master'
  • Contingency date: 2020-01-13

Documentation

A short guide on how to change this for pagure.io will be produced.

Release Notes

Many of the git repositories that are used to create Fedora releases have been moved to use a 'main' branch instead of a 'master' branch. The Fedora project strives to be a welcoming project for everyone.