Данная программа является дополнительным материалом к статье на Habr: «Подождите, не успеваю переписать код …». Я слушал это пару лет и в итоге написал раздатчик изменений кода для студентов.
Консольная NodeJS программа для запуска на компьютере преподавателя, позволяющая отслеживать изменения нужных для занятия файлов и передавать информацию об изменениях другой программе.
Поддерживаемая платформа NodeJS: v18.x+
Необходимо настроить опции в config.json:
serverAppWebSocketUrl
- строка подключения ко второй программе с окончанием/teacher
(например:"http://localhost/teacher"
илиhttp://51.250.76.244:5000/teacher
)settingWatchFiles
- опции наблюдения за файламиexcludeFilesWith
- массив строк с частями названий файлов, за которыми не надо осуществлять отслеживание изменений (например:["node_modules", "package-lock.json"]
)includeFilesWithExt
- массив строк с указанием расширений файлов, за которыми необходимо осуществлять наблюдение изменений (например:[".js", ".json", ".css", ".html"]
)
node app.js urlToFolder [flagClaer]
urlToFolder
- путь к папке, за файлами которой будет происходить отслеживание изменений[clearHistory]
- опциональный аргумент на очистку прошлой истории проекта Пример:node app "C:\training\2022\4 Lesson\3_File" clearHistory
Connect to server side
- Успешное подключение ко второй программе.
Disconnect server side
- Потеряно соединение со второй программой.
N users
- где N
количество студентов, просматривающих web-интерфейс второй программы. Присылается при каждом новом подключении или отключении студента ко второй программе. Например: 5 users
.
File filename success add to log. Version id
- где filename
название файла с расширением и id
номер версии изменённого файла. Присылается после успешной обработки изменений файла второй программой. Пример: File app.js success add to log. Version 0
.
History clear
- Произведена очистка истории изменений файлов проекта.