bemusic / bemuse

⬤▗▚▚▚ Web-based online rhythm action game. Based on HTML5 technologies, React, Redux and Pixi.js.
https://bemuse.ninja/
GNU Affero General Public License v3.0
1.15k stars 147 forks source link

MONOREPO 🐙 bms-js, bemuse-notechart, indexer, bemuse-tools, bmson #486

Closed dtinth closed 6 years ago

dtinth commented 6 years ago

This PR moves the following repositories into Bemuse’s main repo, along with its histories:



How I did this octopus merging:

image

  1. For each repo, I created a branch migrate-to-monorepo:

    git fetch
    git checkout origin/master
    git checkout -b migrate-to-monorepo
    mkdir -p packages/$PACKAGE
    git mv $(git ls-tree --name-only HEAD) packages/$PACKAGE
    git commit -m ':truck: packages/$PACKAGE'

    Where $PACKAGE is the npm package name for that repo.

  2. In Bemuse project, fetch em all:

    for REPO in bms-js bemuse-notechart indexer bemuse-tools bmson
    do
      git fetch --no-tags "../$REPO" "migrate-to-monorepo:monorepo-migrations/$REPO"
    done
  3. Do an octopus merge:

    
    git merge \
      monorepo-migrations/bms-js \
      monorepo-migrations/bemuse-notechart \
      monorepo-migrations/indexer \
      monorepo-migrations/bemuse-tools \
      monorepo-migrations/bmson
    ```sh
  4. The merge shall fail but thanks to StackOverflow we can do this:

    git read-tree \
      monorepo-migrations/bms-js \
      monorepo-migrations/bemuse-notechart \
      monorepo-migrations/indexer \
      monorepo-migrations/bemuse-tools \
      monorepo-migrations/bmson \
      HEAD
    
    git commit
codecov-io commented 6 years ago

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@b48ef13). Click here to learn what that means. The diff coverage is 86.19%.

Impacted file tree graph

@@            Coverage Diff            @@
##             master     #486   +/-   ##
=========================================
  Coverage          ?   84.09%           
=========================================
  Files             ?      170           
  Lines             ?     5370           
  Branches          ?        1           
=========================================
  Hits              ?     4516           
  Misses            ?      854           
  Partials          ?        0
Impacted Files Coverage Δ
src/app/song-loader/song-loader.worker.js 100% <ø> (ø)
src/game/test-helpers/index.js 100% <ø> (ø)
packages/bemuse-tools/spec/payload_spec.js 100% <100%> (ø)
packages/bms/src/notes/channels.js 100% <100%> (ø)
packages/bemuse-indexer/src/keys.js 100% <100%> (ø)
packages/bmson/spec/legacy_bmson_spec.js 100% <100%> (ø)
packages/bmson/spec/bmson_spec.js 100% <100%> (ø)
packages/bms/src/bms/chart.js 100% <100%> (ø)
packages/bemuse-notechart/src/data/GameEvent.js 100% <100%> (ø)
packages/bms/spec/timing_spec.js 100% <100%> (ø)
... and 37 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update b48ef13...57623b1. Read the comment docs.