在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:pcottle/learnGitBranching开源软件地址:https://github.com/pcottle/learnGitBranching开源编程语言:JavaScript 98.4%开源软件介绍:LearnGitBranchingLearnGitBranching is a git repository visualizer, sandbox, and a series of educational tutorials and challenges. Its primary purpose is to help developers understand git through the power of visualization (something that's absent when working on the command line). This is achieved through a game with different levels to get acquainted with the different git commands. You can input a variety of commands into LearnGitBranching (LGB) -- as commands are processed, the nearby commit tree will dynamically update to reflect the effects of each command: This visualization combined with tutorials and "levels" can help both beginners and intermediate developers polish their version control skills. A quick demo is available here: https://pcottle.github.io/learnGitBranching/?demo Or, you can launch the application normally here: https://pcottle.github.io/learnGitBranching/ Sandbox ModeBy default the application launches in "sandbox mode" with a basic repository already created. Here you can enter commands and mess around with a repository as much as you like. Keep in mind you can
Sandbox mode can be great for demonstrating something to a friend, but the real learning is with levels... LevelsType For some added fun, there is a "git golf" concept where we keep track of how many commands you use to solve each level. See if you can match all of our records! Sharing permalinksYou can share a link to LearnGitBranching with an arbitrary set of commands that will execute upon load by using the Level BuilderYou can build levels with the Reporting Bugs / Opening IssuesWhen reporting bugs, try running the command How the app works / Contributing functionalityLearnGitBranching is a pretty simple application (from a technical perspective). There's no backend database or any AJAX requests -- it's a 100% clientside application written in JavaScript. The production version (on github.io) literally just serves up an HTML page with some JS and CSS. The rest of the magic lies in the 9k+ lines of JavaScript :P Because the app contains a lot of code, I have written everything into Nodejs-style modules. The modules are packaged together with the As of December 2013, I've migrated the build process to use Grunt >0.4, since the older version was giving a lot of people build headaches. It should be fairly rock solid now! Here is the high-level process of the build:
Thus, if you build the app locally, all you have to do in order to run the app is just open up Building yourself / Contributing FunctionalityFor contributing core functionality in the app, you'll probably want to test your changes at least once before submitting a pull request. That means you'll need the "gulp.js" build tool to build the app: https://gulpjs.com/docs/en/getting-started/quick-start You'll also need The general workflow / steps are below: git clone <your fork of the repo>
cd learnGitBranching
yarn install
git checkout -b newAwesomeFeature
vim ./src/js/git/index.js # some changes
yarn gulp fastBuild # skips tests and linting, faster build
# after building you can open up your browser to the index.html
# file generated and see your changes
vim ./src/js/git/index.js # more changes
yarn gulp build # runs tests and lint
git commit -am "My new sweet feature!"
git push
# go online and request a pull Alternatively, you can also build and run the app in a pre-configured online workspace: Helpful FolksA big shoutout to these brave souls for extensively testing our sandbox and finding bugs and/or inconsistencies:
And the following heroes for assisting in translating:
Also huge shoutout for everyone who has put up a pull request that was pulled! Check out the 30+ contributors we have in the Contributors View And everyone who has reported an issue that was successfully closed! |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论