Project

General

Profile

Misc #15843

Updated by k0kubun (Takashi Kokubun) about 1 year 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