gitextract_ow2z9stj/ ├── .editorconfig ├── .github/ │ ├── FUNDING.yml │ ├── settings.yml │ └── workflows/ │ ├── build-docker.yml │ └── containerize.yml ├── .gitignore ├── .gitpod.yml ├── .jshintrc ├── .travis.yml ├── CLAUDE.md ├── CNAME ├── CONTRIBUTING.md ├── Dockerfile ├── LICENSE.md ├── Makefile ├── README.md ├── __tests__/ │ ├── CommandLineStore.spec.js │ ├── GlobalStateStore.spec.js │ ├── LevelStore.spec.js │ ├── LocaleStore.spec.js │ ├── animation.spec.js │ ├── base.js │ ├── collections.spec.js │ ├── commandModel.spec.js │ ├── create.js │ ├── errors.spec.js │ ├── eventEmitter.spec.js │ ├── git.spec.js │ ├── levels.spec.js │ ├── mercurial.spec.js │ ├── remote.spec.js │ ├── simpleRemote.spec.js │ ├── treeCompare.spec.js │ ├── vcs.spec.js │ └── visuals.spec.js ├── checkgit.sh ├── generatedDocs/ │ ├── github-markdown.css │ └── levels.html ├── gulpfile.js ├── package.json ├── scripts/ │ ├── check-package-manager.js │ └── translate.js ├── src/ │ ├── js/ │ │ ├── actions/ │ │ │ ├── CommandLineActions.js │ │ │ ├── GlobalStateActions.js │ │ │ ├── LevelActions.js │ │ │ └── LocaleActions.js │ │ ├── app/ │ │ │ └── index.js │ │ ├── commands/ │ │ │ └── index.js │ │ ├── constants/ │ │ │ └── AppConstants.js │ │ ├── dialogs/ │ │ │ ├── confirmShowSolution.js │ │ │ ├── levelBuilder.js │ │ │ ├── nextLevel.js │ │ │ └── sandbox.js │ │ ├── dispatcher/ │ │ │ └── AppDispatcher.js │ │ ├── git/ │ │ │ ├── commands.js │ │ │ ├── gitShim.js │ │ │ ├── headless.js │ │ │ └── index.js │ │ ├── graph/ │ │ │ ├── index.js │ │ │ └── treeCompare.js │ │ ├── intl/ │ │ │ ├── checkStrings.js │ │ │ ├── index.js │ │ │ └── strings.js │ │ ├── level/ │ │ │ ├── builder.js │ │ │ ├── disabledMap.js │ │ │ ├── index.js │ │ │ └── parseWaterfall.js │ │ ├── log/ │ │ │ └── index.js │ │ ├── mercurial/ │ │ │ └── commands.js │ │ ├── models/ │ │ │ ├── collections.js │ │ │ └── commandModel.js │ │ ├── react_views/ │ │ │ ├── CommandHistoryView.jsx │ │ │ ├── CommandView.jsx │ │ │ ├── CommandsHelperBarView.jsx │ │ │ ├── HelperBarView.jsx │ │ │ ├── IntlHelperBarView.jsx │ │ │ ├── LevelToolbarView.jsx │ │ │ └── MainHelperBarView.jsx │ │ ├── sandbox/ │ │ │ ├── commands.js │ │ │ └── index.js │ │ ├── stores/ │ │ │ ├── CommandLineStore.js │ │ │ ├── GlobalStateStore.js │ │ │ ├── LevelStore.js │ │ │ └── LocaleStore.js │ │ ├── util/ │ │ │ ├── constants.js │ │ │ ├── debounce.js │ │ │ ├── debug.js │ │ │ ├── errors.js │ │ │ ├── escapeString.js │ │ │ ├── eventBaton.js │ │ │ ├── eventEmitter.js │ │ │ ├── index.js │ │ │ ├── keyMirror.js │ │ │ ├── keyboard.js │ │ │ ├── mock.js │ │ │ ├── promise.js │ │ │ ├── reactUtil.js │ │ │ ├── throttle.js │ │ │ └── zoomLevel.js │ │ ├── views/ │ │ │ ├── builderViews.js │ │ │ ├── commandViews.js │ │ │ ├── gitDemonstrationView.js │ │ │ ├── index.js │ │ │ ├── levelDropdownView.js │ │ │ ├── multiView.js │ │ │ └── rebaseView.js │ │ └── visuals/ │ │ ├── animation/ │ │ │ ├── animationFactory.js │ │ │ └── index.js │ │ ├── index.js │ │ ├── tree.js │ │ ├── visBase.js │ │ ├── visBranch.js │ │ ├── visEdge.js │ │ ├── visNode.js │ │ ├── visTag.js │ │ └── visualization.js │ ├── levels/ │ │ ├── advanced/ │ │ │ └── multipleParents.js │ │ ├── index.js │ │ ├── intro/ │ │ │ ├── branching.js │ │ │ ├── commits.js │ │ │ ├── merging.js │ │ │ └── rebasing.js │ │ ├── mixed/ │ │ │ ├── describe.js │ │ │ ├── grabbingOneCommit.js │ │ │ ├── jugglingCommits.js │ │ │ ├── jugglingCommits2.js │ │ │ └── tags.js │ │ ├── rampup/ │ │ │ ├── cherryPick.js │ │ │ ├── detachedHead.js │ │ │ ├── interactiveRebase.js │ │ │ ├── relativeRefs.js │ │ │ ├── relativeRefs2.js │ │ │ └── reversingChanges.js │ │ ├── rebase/ │ │ │ ├── manyRebases.js │ │ │ └── selectiveRebase.js │ │ └── remote/ │ │ ├── clone.js │ │ ├── fakeTeamwork.js │ │ ├── fetch.js │ │ ├── fetchArgs.js │ │ ├── fetchRebase.js │ │ ├── lockedMain.js │ │ ├── mergeManyFeatures.js │ │ ├── pull.js │ │ ├── pullArgs.js │ │ ├── push.js │ │ ├── pushArgs.js │ │ ├── pushArgs2.js │ │ ├── pushManyFeatures.js │ │ ├── remoteBranches.js │ │ ├── sourceNothing.js │ │ └── tracking.js │ ├── style/ │ │ ├── font-awesome.css │ │ ├── main.css │ │ └── rainbows.css │ └── template.index.html └── vite.config.js