Что означает каталог /dist в проектах с открытым исходным кодом?



С тех пор, как я впервые увидел dist/ каталог во многих проектах с открытым исходным кодом, обычно на GitHub, мне было интересно, что это значит. (Я иностранец, не родной на английском языке)



С dist,vendor,lib,src, и многие другие имена папок, которые мы видим довольно часто, я иногда задаюсь вопросом, как я должен назвать свои собственные папки.



поправьте меня, если я ошибаюсь!




  • src: содержит * источники**. Иногда только чистые источники, иногда с уменьшенная версия, зависит от проекта.

  • поставщик: содержит другие зависимости, как и другие проекты с открытым исходным кодом.

  • lib: хороший вопрос, это действительно близко к vendor на самом деле, в зависимости от проекта мы можем видеть один или другой или оба...

  • dist: из того, что я видел, он содержит "производственные" файлы, тот, который мы должны использовать, если мы хотим использовать библиотека.


почему открытый исходный код так запутан? Разве это не возможно сделать все более четко? По крайней мере, для каждого языка, потому что некоторые языки используют определенные имена.

10090   3  

3 ответов:

чтобы ответить на ваш вопрос:

/dist означает "дистрибутив", скомпилированный код/библиотека.

структура папок зависит от системы сборки и языка программирования. Вот некоторые стандартные соглашения:

  • src/:" исходные " файлы для сборки и разработки проекта. Здесь находятся исходные исходные файлы, прежде чем они будут скомпилированы в меньшее количество файлов до dist/,public/ или build/.
  • dist/: "дистрибутив", скомпилированный код / библиотека, также называется public/ или build/. Файлы, предназначенные для производства или общественного использования, обычно находятся здесь.
  • lib/: внешние зависимости (при непосредственном включении).
  • test/: тесты сценарии проекта, глумится и т. д.
  • vendor/: зависимости обычно помещаются сюда через управление зависимостями.
  • bin/: файлы, которые добавляются в ваш путь, когда установленный.

Markdown / Текстовые Файлы:

  • README.md: файл справки, который обращается к установке, учебники и документы проекта. README.txt также используется.
  • LICENSE.md: все прав дано вам относительно проекта. LICENSE или LICENSE.txt - это вариации имени файла лицензии, имеющие одинаковое содержимое.
  • CONTRIBUTING.md: как помочь С проектом. Иногда это рассматривается в элемент .

конкретные (они могут продолжаться вечно):

  • package.json: описывает библиотеку и зависимости (если пакет JS).
  • composer.json: то же, что и выше, но для пакетов PHP через composer.
  • .travis.yml: config для Travis CI окружающая среда.
  • .gitignore: спецификация файлов означает игнорировать по Git.

чтобы ответить на ваш первоначальный вопрос о значении :

в краткая форма dist расшифровывается как distributable и относится к каталогу, где будут храниться файлы, которые могут быть непосредственно использованы другими без необходимости компиляции или минимизации исходного кода, который используется повторно.

пример: если я хочу использовать исходный код библиотеки Java, которую кто-то написал, то вам нужно сначала скомпилировать источники, чтобы использовать его. Но если автор библиотеки помещает уже предварительно скомпилированную версию в репозиторий, то вы можете просто идти вперед. Такая уже скомпилированная версия сохраняется в .

нечто подобное относится и к модулям JavaScript. Обычно код JavaScript минимизируется и запутывается для использования в производстве. Поэтому, если вы хотите распространять библиотеку JavaScript, рекомендуется поместить простой (не уменьшенный) исходный код в src (исходный) каталог и уменьшенный и запутанная версия в dist (распространяемый) directoy, поэтому другие могут сразу же захватить уменьшенную версию без необходимости ее уменьшать.

Примечание: некоторые разработчики используют такие имена, как target,build или dest (пункт назначения) вместо dist. Но назначение этих папок идентично.

сводка папок:

  • bin: двоичные файлы
  • src: source
  • включить: C / C++ заголовки
  • lib: C / C++ библиотеки
  • contrib: вклад от других людей
  • документ/документы: документация
  • man: руководство (Unix / Linux)

Comments

    Ничего не найдено.