Есть ли общепринятый символ в мире программирования для корня проекта?
Например, тильда ~ является домашним каталогом пользователя, но это не только соглашение, но и часть UNIX.
Я ищу символ, который является просто условным.
Есть ли общепринятый символ в мире программирования для корня проекта?
Например, тильда ~ является домашним каталогом пользователя, но это не только соглашение, но и часть UNIX.
Я ищу символ, который является просто условным.
Если вы ищете соглашение для использования в общении с командой, я бы предложил название проекта, а затем /
. Это дает понять, к какому проекту вы обращаетесь. Если название проекта уже подразумевается контекстом, представляется, что это соглашение просто использовать имя подкаталога, с или без конечной косой черты. См. здесь и здесь для примеров из документации, связанной с Linux-ядром.
Я не знаю такого соглашения. В Autoconf переменные top_srcdir
и abs_top_srcdir
указывают на корень проекта. В git выполняется следующее задание:
git rev-parse --show-toplevel
Однако, если вы ищете один символ символа, я предлагаю заимствовать символ tee: ⊤ (U + 22A4, & # 8868). Я не думаю, что это когда-либо использовалось для этого, но оно отражает идею верха.
корень проекта
Что означает корень проекта точно? Учитывая какой контекст? Какие типы проектов? Вы говорите о развернутых веб-проектах? Исходное дерево веб-проектов? Утилита командной строки, написанная на C? Или в Java? Или Go?
Каждый язык и структура обеспечивают его наборы предопределенных структур. Тогда корнем проекта является либо корень vcs, который может хранить много активов, которые не имеют строгого отношения к бизнесу программного обеспечения, или корень в соответствии с данной структурой/языком, с которым вы работаете, и в этом случае я предположим, что можно с уверенностью сказать, что это может быть что угодно, потому что они так много разных fw для многих различных проблем.
Портативный интерфейс операционной системы (POSIX), такой как UNIX.
Windows имеет C://
или другие драйверы как root, а POSIX имеет /
как root.
чтобы узнать, является ли файл корневым путем или нет, вы можете использовать path.isAbsolute('PATH_HERE')
this ill return true, если это корневой путь.
чтобы узнать, работает ли ваш node на платформах Windows или POSIX, process.platform
чтобы проверить, работаете ли вы в окнах:
var isWin = /^win/.test(process.platform);
nodeJS Docs: https://nodejs.org/dist/latest-v6.x/docs/api/path.html#path_path_isabsolute_path
Я думаю, что люди обычно используют ярлык, чтобы быть корнем вместо символа, например, /server для корня node.
После минимального исследования и чтения около 1/4 статьи wikipedia в Root Directory я пришел к всемогущему, навсегда Заключение:
Нет, нет стандартного способа указать, что вы находитесь в корневой директории произвольного проекта. (Помимо чтения самого пути)
Вот еще одна ссылка, относящаяся к inodes дальше, чтобы было похоже, что я сделал больше исследований.
Стандарт, который вы придумали, не обязательно должен быть глобальным, он может просто применяться к вашей команде разработчиков, если вы этого хотите. В этом случае позвольте сделать 3 прямо с верхней части нашей (моей) головы.
Как насчет |->foo/bar/a.java
? |
указывает на ровный уровень, перед которым ничего нет.
Мы всегда могли попробовать скучно (но полезно... я думаю): (foo)/bar/a.java
Или немного подправить вещи, мы могли бы сделать...
I am gROOT
|foo|/bar/a.java
Какой бы стандарт вы ни выбрали (что смешно, потому что использование стандарта подразумевает, что есть только одно), вам теперь придется...
Это будет трудная часть. Вам нужно будет найти способ указать OS, что вы находитесь не только в произвольном каталоге, но и в том, что вы находитесь в каталоге, который имеет немного большее значение, чем другие. Возможно, вы добавите еще один раздел в INODE (по крайней мере в * nix), который указывает, что это важно. Возможно, вы не суетитесь со всеми файлами уровня ОС, а вместо этого патчем git, чтобы распознать корень всех проектов git... которые теперь, когда я думаю об этом, уже происходит.
Позволяет использовать git в качестве примера. git проекты обозначаются .git
файлами в корневом каталоге. Поэтому давайте сделаем шаг дальше и поместим файл .base
в каждый каталог, являющийся корнем проекта (или у вас есть). .base
даже не нужно что-либо иметь в нем, он просто должен быть там. Теперь, исправьте любой терминал, который вы используете, чтобы распознать файл .base
в качестве корня произвольного проекта и отобразить его, как вам нравится! EZ-ПЗ
Некоторые другие мысли здесь, возможно, вы могли бы добавить некоторую конфигурацию в файл .base
, например:
proj_name=WorldTraveller
lang=java
other=stuff
can=go
here=whatever
который затем управляет тем, как он отображается в терминале. Вышеприведенная конфигурация с использованием моего первого предложенного стандарта была бы
|->WorldTraveller/Countries/France/a.java
Я не пытаюсь оторваться как саркастический D.i.a.B, так что, если я сойду с ума, это не мое намерение. Мне нравится получать удовольствие, иногда отвечая на вопросы.