LearnGitBranching — это визуализатор репозиториев git, песочница и серия обучающих материалов и задач. Его основная цель — помочь разработчикам понять git с помощью визуализации (чего нет при работе в командной строке). Это достигается с помощью игры с разными уровнями для ознакомления с различными командами git.
В LearnGitBranching (LGB) можно вводить различные команды — по мере обработки команд ближайшее дерево коммитов динамически обновляется, отражая эффекты каждой команды:
Вы можете ознакомиться с демонстрацией здесь: https://pcottle.github.io/learnGitBranching/?demo
Или запустить приложение обычным образом здесь: https://pcottle.github.io/learnGitBranching/
По умолчанию приложение запускается в «режиме песочницы» с уже созданным базовым репозиторием. Здесь вы можете вводить команды и возиться с репозиторием сколько угодно. Имейте в виду, что вы можете:
undo
отменить последнюю команду;reset
начать всё сначала с чистого листа (работает и на уровнях);git clone
имитировать удалённые репозитории!Режим песочницы может быть полезен для демонстрации чего-либо другу, но настоящее обучение происходит на уровнях...
Введите levels
, чтобы увидеть доступные уроки / задачи (и какие из них вы уже решили). Каждая серия уровней направлена на изучение какого-либо высокоуровневого концепта git, и каждая вкладка уровней разделяет основные области информации (например, удалённые репозитории и локальные).
Для дополнительного развлечения существует концепция «git golf», где мы отслеживаем, сколько команд вы используете для решения каждого уровня. Посмотрите, сможете ли вы побить все наши рекорды!
Вы можете поделиться ссылкой на LearnGitBranching с произвольным набором команд, которые будут выполняться при загрузке, используя параметр URL command
. В этом случае вы также, вероятно, захотите отключить диалоговое окно вступления, используя параметр NODEMO
; вот пример, чтобы начать работу.
Вы можете создавать уровни с помощью команды build level
. Диалог проведёт вас через процесс, и в конце он покажет вам JSON-объект, представляющий только что созданный уровень. Вставьте его в gist или непосредственно в проблему, и я смогу проверить его / объединить ваши изменения! Вы также можете поделиться этим уровнем напрямую с друзьями, попросив их выполнить import level
и вставить JSON в появившееся текстовое поле, или просто отправить им специальный URL с идентификатором gist, например так: https://pcottle.github.io/learnGitBranching/?gist_level_id=a84407351f9c9f0cb241
При сообщении об ошибках попробуйте выполнить команду debug_copyTree()
в консоли JS, когда находитесь в состоянии непосредственно перед воспроизведением ошибки. Это поможет избежать необходимости копировать все команды, которые вы использовали для перехода в определённое состояние. (Я могу использовать команду importTreeNow
, чтобы перейти к этому точному состоянию).
Чтобы внести основной функционал в приложение, вам, вероятно, потребуется протестировать свои изменения хотя бы один раз перед отправкой запроса на вытягивание. Для этого вам понадобится инструмент сборки «gulp.js»:
https://gulpjs.com/docs/en/getting-started/quick-start
Вам также понадобится yarn
для загрузки всех зависимостей проекта.
Общий рабочий процесс / шаги приведены ниже:
git clone <ваш форк репозитория>
cd learnGitBranching
yarn install
git checkout -b newAwesomeFeature
vim ./src/js/git/index.js # некоторые изменения
yarn gulp fastBuild # пропускает тесты и линтинг, быстрее строит
# после сборки вы можете открыть свой браузер на index.html **Перевод текста на русский язык:**
*open ./index.html*
# файл сгенерирован, смотрите изменения
*vim ./src/js/git/index.js* # ещё изменения
*yarn gulp build* # запускает тесты и линтинг
*git commit -am «Моя новая замечательная функция!»*
*git push*
# зайдите в интернет и запросите пул реквест
Также вы можете собрать и запустить приложение в предварительно настроенном онлайн-рабочем пространстве:
LearnGitBranching — довольно простое приложение (с технической точки зрения). Здесь нет бэкенд-базы данных или каких-либо AJAX-запросов — это 100% клиентское приложение, написанное на JavaScript. Производственная версия (на github.io) буквально просто обслуживает HTML-страницу с некоторым JS и CSS.
Вот высокоуровневый процесс сборки:
Таким образом, если вы собираете приложение локально, всё, что вам нужно сделать, чтобы запустить его, это просто открыть index.html в корне репозитория. Довольно просто.
Вы можете запустить последнее стабильное изображение с помощью команды docker run -p 8080:80 ghcr.io/pcottle/learngitbranching:main. Доступ к вашей среде осуществляется по адресу http://localhost:8080/.
Вы можете собрать приложение и образ с помощью команды: docker build -t ghcr.io/pcottle/learngitbranching:latest. Информацию о том, как собирать локально с помощью docker, см. в файле Makefile.
Большое спасибо этим смелым людям за то, что они тщательно протестировали нашу песочницу и нашли ошибки и/или несоответствия:
И следующим героям за помощь в переводе:
Также большое спасибо всем, кто отправил пул реквест, который был принят! Посмотрите на более чем 30 участников, которые есть у нас в Списке участников.
И всем, кто сообщил о проблеме, которая была успешно решена!
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )