Project

General

Profile

Misc #15843

Updated by k0kubun (Takashi Kokubun) about 2 months ago

## Background

* We're using `trunk` branch as a canonical development branch because it has been mirrored to there by git-svn.
* In a usual git repository, a HEAD branch is `master` by default. Using `trunk` instead of `master` is confusing and causes typo on git operations or typing git-related URLs.
* We can make an *alias branch* by using symbolic-ref on `git.ruby-lang.org:ruby.git`. We can start using `master` branch without disturbing any `trunk` usage. Why not use it?

## Proposed schedule

* 2019
* 5/22: Announce this schedule *(done)*
* 5/23: Make `master` symbolic-ref pointing to `trunk` on git.ruby-lang.org *(done)*
* 5/23~6/30: Ask maintainers of CI (or whatever integrated with the repository) to explicitly use `master` branch instead of `trunk` at ruby-core mailing list. *(asked)*
* 7/1: Switch HEAD on git.ruby-lang.org from `trunk` to `master`, and reverse the symbolic-ref direction (change the default branch of GitHub ruby/ruby to `master` too)
* `sudo -u git bash -c "cd /var/git/ruby.git && mv refs/heads/trunk refs/heads/master && git symbolic-ref refs/heads/trunk refs/heads/master"`
* 2020
* 1/1: Drop `trunk` branch on git.ruby-lang.org
* `sudo -u git bash -c "cd /var/git/ruby.git && rm refs/heads/trunk"`

### Expected outcome

* 2019/5/23:
*
Push to `trunk` branch of git.ruby-lang.org will be reflected to both `trunk` and `master` branches of git.ruby-lang.org immediately.

* Push to `master` branch of git.ruby-lang.org will also be reflected to both `trunk` and `master` branches of git.ruby-lang.org immediately.

* Both of `trunk` and `master` branches on GitHub will be always mirrored.
* 2019/7/1:
* git clone checks out `master` instead of `trunk` by default.
* 2020/1/1:
* `trunk` branch cannot be fetched and pushed anymore.

Back