a1fbd64f87
The repo is still being assembled as a templated workspace, so the branch conventions are the intended end state rather than a current rule. Recording that in the README so the 'master is protected and immutable' line is not read as an active restriction while the template is still taking shape.
59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
# Video-related files for NCMR songs
|
|
|
|
This repo houses the code-like files for NCMR music videos. Binary assets live elsewhere.
|
|
|
|
## Structure
|
|
|
|
> **Repo state: workspace under construction.** `master` is *not* locked in yet —
|
|
> it is still being assembled as the shared template. Until it is locked, any
|
|
> branching strategy is fine and template/tooling work can land on `master`
|
|
> directly. The branch conventions below describe the intended end state, not a
|
|
> rule currently in force.
|
|
|
|
### `master` branch — shared template
|
|
|
|
This branch holds the common scaffolding:
|
|
|
|
- **Remotion project** — entry point, root component, and a placeholder composition
|
|
- **`ffmpeg.sh`** — helper for baking ASS subtitles or bypassing with static image + audio
|
|
- **`src/lrc2srt.ts`** — legacy LRC → SRT subtitle converter
|
|
- **Build config** — TypeScript, ESLint, Prettier, Remotion studio
|
|
|
|
### Song branches
|
|
|
|
For each song, create a branch `<song-name>/master` (and optionally feature branches
|
|
like `<song-name>/synced-lyrics-remotion`):
|
|
|
|
```
|
|
git checkout -b <song-name>/master
|
|
```
|
|
|
|
Copy the shared template into the song branch, then add song-specific files:
|
|
|
|
```
|
|
mkdir -p <song-name>
|
|
# Place your song-specific compositions, assets manifests, etc.
|
|
```
|
|
|
|
Once `master` is locked in it remains protected and mostly immutable. Until then,
|
|
song branches are a rehearsal for that end state, not a requirement.
|
|
|
|
## Guideline
|
|
|
|
### Git-ignored (not tracked here)
|
|
|
|
- Binary input assets (audio, images, fonts, material video clips)
|
|
- Video output (`out/`, rendered files)
|
|
|
|
For untracked input assets, a **bill of materials** listing everything and explaining
|
|
what each file is will be mandatory. Keep it as `BOM.md` alongside your song assets.
|
|
|
|
### Branching
|
|
|
|
- `master` — minimal template (protected once locked in)
|
|
- `<song>/master` — song-specific work
|
|
- `<song>/<feature>` — parallel features for a song
|
|
|
|
Once `master` is locked, this repo's branching rules supersede any generic git
|
|
operation conventions. Before that point, use whatever is convenient.
|