Search... (alt + k)

Настройка рабочей среды Zendoc

status

in progress

Можно найти в репозитории нужный файл и нажать на клавиатуре клавишу с точкой (.), откроется редактор VSCode прямо в браузере.

Там можно внести необходимые изменения в один или несколько файлов проекта и закоммитить их на третьей вкладке в левой навигации.

Необходимо поставить себе:

git clone git@github.com:fhir-ru/zendoc.git

либо так, если хотите переименовать папку zendoc например в fhir-ru:

git clone git@github.com:fhir-ru/zendoc.git fhir-ru

  • Запустить Docker
  • Зайти в папку проекта:
cd zendoc

или

cd fhir-ru
  • Инициализировать сабмодули:
git submodule init
git submodule update --recursive

Установить node_modules с файлами стандарта FHIR, выполнив из папки zrc:

cd zrc
npm install
  • Открыть проект в VSCode с помощью команды в терминале:
code ./
  • В VSCode перейти в терминал и запустить команду:
docker-compose up -d

либо с логами:

docker-compose logs -f
  • Когда процесс выполнится (может занять где-то до 5 минут, можно смотреть по логам докера, как идет процесс), открыть в браузере страницу http://localhost:3333/
  • Внести изменения в файлы проекта, рефрешнуть страницу в браузере (F5)
  • Если необходимо, остановить докер можно командой:
docker-compose stop

  • Просто скачать изменения без мержа:
git fetch
  • Просмотреть изменения файлов (статистику) на сервере по сравнению с вашей версией:
git diff --stat origin/main..main
  • Просмотреть изменения кода на сервере по сравнению с вашей версией:
git diff origin/main..main
  • Скачать и установить последнюю версию:
git pull --ff-only

**Ключ --ff-only позволяет сделать pull, только если возможен автоматический мерж изменений ваших и на сервере, и прерывает выполнение команды, если есть конфликты.

либо так:

git pull
  • Можно посмотреть изменения между двумя коммитами, например последним и предпоследним:
git diff main..main~1
  • Обновить сабмодули:
git submodule update --recursive
  • Рестартануть докер-контейнер:

Сначала обязательно обновить сабмодули.

git submodule update --recursive

Получить список ваших изменений:

git status

Краткая форма проверки статуса:

git status -bs

Посмотреть статистику ваших текущих изменений:

git diff --stat

В списке ваших изменений не должно быть modified: libs/zd (modified content).

Скачать последнюю версию, чтобы избежать мержа:

git pull --ff-only

Добавление всех ваших измененных и новых файлов к коммиту:

git add .

либо можно добавить к коммиту только модифицированные файлы:

git add -u

Можно добавлять в коммит изменения из файла по частям:

git add -p

Если хотите убрать файлы из коммита, воспользуйтесь командой:

git reset head

Дать наименование коммиту:

git commit -m "Ваш текст-пояснение к коммиту"

Отправить ваш коммит на сервер:

git push

Если нужно временно спрятать свои локальные изменения, например в случае конфликтов, когда нужно забрать изменения с сервера:

git stash

Достать спрятанные изменения обратно, например после успешного пулла:

git stash apply

Для вашего удобства можно настроить редактор VSCode:

  • Автоматическое сохранение изменений:

открыть Settings / Auto Save и выбрать опцию onFocusChange.

  • Автоматическое форматирование:

поставить расширения Prettier и Formatting Toggle.

  • VSCode prevent file Explorer from jumping:

"explorer.autoReveal": false

Name: zendoc
Id: zendoc-vs.zendoc
Description: semantic wiki syntax
Version: 0.0.1
Publisher: zendoc-vs
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=zendoc-vs.zendoc

Name: zen-lsp
Id: zen-lang.zen-lsp
Description: 
Version: 0.0.3
Publisher: zen-lang
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=zen-lang.zen-lsp

Name: TabOut
Id: albert.TabOut
Description: Tab out of quotes, brackets, etc
Version: 0.2.1
Publisher: Albert Romkes
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=albert.TabOut

Name: Prettier - Code formatter
Id: esbenp.prettier-vscode
Description: Code formatter using prettier
Version: 9.5.0
Publisher: Prettier
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode

Name: Formatting Toggle
Id: tombonnike.vscode-status-bar-format-toggle
Description: A VS Code extension that allows you to toggle formatting settings ON and OFF with a simple click.
Version: 3.0.0
Publisher: tombonnike
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=tombonnike.vscode-status-bar-format-toggle

Name: cljfmt
Id: pedrorgirardi.vscode-cljfmt
Description: Format Clojure & EDN.
Version: 1.3.0
Publisher: Pedro Girardi
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=pedrorgirardi.vscode-cljfmt

Name: Calva: Clojure & ClojureScript Interactive Programming
Id: betterthantomorrow.calva
Description: Integrated REPL, formatter, Paredit, and more. Powered by cider-nrepl and clojure-lsp.
Version: 2.0.287
Publisher: Better Than Tomorrow
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=betterthantomorrow.calva

Name: Bookmarks
Id: alefragnani.Bookmarks
Description: Mark lines and jump to them
Version: 13.3.0
Publisher: Alessandro Fragnani
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=alefragnani.Bookmarks

Кроме запуска проекта под Windows в докере, проект можно запустить в WSL - Windows Subsystem for Linux.Для этого сначала необходимо поставить WSL2, задать пользователя и пароль, поставить расширение для VSCode.

Также можно поставить Ubuntu на Windows через Microsoft Store.

Найти в Microsoft Store и поставить Windows Terminal.

Запустить Windows Terminal, в нем в панели меню выбрать в выпадающем списке Ubuntu, продолжить работу в этом терминале.

Поставить java

Install Java in the terminal with: sudo apt install openjdk-11-jdk

Поставить clojure

Install leiningen with apt-get: sudo apt-get install leiningen

Поставить babashka

bash < <(curl -s https://raw.githubusercontent.com/babashka/babashka/master/install)

Поставить gh cli для удобства работы с гитом.

curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg

sudo apt install gh

gh auth login

авторизоваться на GitHub, ввести код (First copy your one-time code)

Сгенерировать ssh-ключ.

Склонировать репозиторий проекта

gh repo clone fhir-ru/zendoc

cd zendoc/

git submodule init

git submodule update --recursive`

Установить node_modules с файлами стандарта FHIR, выполнив из папки zrc:

cd zrc

npm install

cd ..

Открыть проект в VSCode:

code .

Если при выполнении каких-то команд консоль будет ругаться, то поставить недостающие программы или зависимости.

Наверх