Итак, теперь это witcher3map / witcher3map. Могу ли я просто переместить его на одну папку или GIT каким-то образом сохранить эти пути и другую конфигурационную информацию где-нибудь, и это заставит GIT запутаться?
Это нормально, чтобы переместить его. Вся история любого репо в git хранится локально в «относительной root» папке (это папка .git
). Таким образом, полное перемещение всего проекта ничего не изменит для git.
Затем я запустил NPM install - Теперь я считаю, NPM смотрит на файл пакета. json, чтобы выяснить, какие зависимости нужны DL, это правильно?
Правильно. Возможны и другие вещи (обратный каскадный поиск, если вы не указали c в семантике файла package.json
), но npm install
просто предназначен для поиска и установки пакетов x.
После загрузки зависимостей, если я затем синхронизирую c, репозитории снова загружают зависимости в GIThub?
Не стоит, взгляните на .gitignore файл в репозитории ведьмы вы связаны. Он настроен как черный список, на что git следует не обращать внимание. node_modules
находится в этом списке.
Еще немного информации - Grunt является зависимостью, и он загрузил ее нормально Когда я запускаю "grunt build", я запускаю из GIT Bash CLI и он говорит "команда не найдена", нужно ли мне скорее запускать его в узле?
Никогда не использовал grunt лично (больше похоже на gulp / npm native / webpack), но, как и в случае других популярных исполнителей задач, вам, возможно, придется установить его глобально. Вот что означает флаг -g
:
npm install -g grunt-cli
https://gruntjs.com/getting-started
Сначала запустите эту команду, затем выполните инструкции из репо.
Даже когда он установлен, может кто-нибудь сказать мне, как выполняется "сборка"? Я предполагаю, что он идет в подпапку и загружает файл типа конфигурации grunt, в котором есть инструкции по сборке, но как он туда попадает?
Gruntfile.js
- это место, где находится конфигурация.
По сути, Грант - просто "дирижер оркестра". Он инициализирует зависимости пакетов, которые вы скачали с помощью npm install
(которые находятся внутри node_modules
), с соответствующими файлами конфигурации (если они не ищут их автоматически).
Например, server.js
, это файл конфигурации для пакета express, указанного в вашем пакете. json файл. По сути, это делает nodeJS средой веб-сервера (т. Е. Локально устанавливает адрес обратной связи для порта независимо от того, когда вы делаете запрос в браузере, узел прослушивает и отвечает).
Что касается того, как NodeJS знает об этом материале, который потребует больше времени для объяснения, чем я готов инвестировать, но подсказка такова: именно поэтому вам пришлось установить grunt во всем мире.
Заключительные советы:
Вы слишком много думаете об этом, как головоломка, это больше похоже на башню дженга, слои на слоях.
Git находится на своем собственном слое, отдельном от ворчания / nodeJS.
PS Ответил, потому что у меня было свободное время ( кашель covid19, нет работы), но вы, вероятно, должны публиковать подобные вопросы либо на форумах freecodecamp или Reddit для лучшего приема.