Усильте завершение своей оболочки. Bash имеет некоторое завершение для svn
, zsh's значительно лучше. Например, в zsh, svn add
завершает только файлы, которые уже не зарегистрированы, svn commit
списки только регистрируют, которые регистрируются и имеют изменения и так далее. Это одно должно дать Вам большую часть того, что Вы спрашиваете:
svn status
или svn commit
svn commit
svn status
или svn add
svn add
svn revert
Определите псевдонимы и функции для команд, которые Вы чаще всего используете. Вот некоторые, что я использую в zsh (обратите внимание, что я перехожу к агностическим VC псевдонимам; это svn-определенные ярлыки, аналогичные ярлыкам CVS, которые я использовал в течение приблизительно одного десятилетия).
## Show file status (excluding non-controlled files)
alias svns='svn status > >(grep -v "^?")'
## Show the status of modified files (in particular, to notice potential conflicts in the next update)
svnm () {
[[ $# -ne 0 ]] || set .
svn merge -r BASE:HEAD --dry-run "$@" | sed -e '/^-/d'
return $pipestatus[1]
}
## log (in chronological order)
svnl () {
local since="1" cmd arg= ret=0
if [[ $1 = <1900->-<1-12>-<1-31> ]]; then
since="{$1}"
shift
elif [[ $1 = <1-> ]]; then
since=$1
shift
fi
cmd=(svn log -r$since:HEAD)
while [[ $1 = -* ]]; do
cmd=($cmd $1)
shift
done
if [[ $# -ne 0 ]]; then
for arg; do
$cmd[@] $1
ret=$((ret > $? ? $ret : $?))
done
return $ret
else
$cmd[@]
fi
}
## log (from the start of the present branch or the last move)
alias svnlb='svnl --stop-on-copy'
Можно хотеть включать некоторую информацию об управлении версиями в подсказку с zsh's vcsinfo
.
Согласно ссылке FHS, которую Вы дали
/mnt/ Temporarily mounted filesystems.
Таким образом, я предполагаю, что необходимо подразумевать, что permenantly смонтировал некорневую бессистемность (значение не/var/log или подобный) файловые системы.
Я всегда помещал их в/mnt/fsidentifier и затем symlinked к затем при необходимости.
Так, например, у меня был/mnt/website однажды,/mnt/appdata,/mnt/whatever, затем символьная ссылка это. Я никогда ничего не монтировал непосредственно к/mnt
Если бы Вы хотели "чистое" решение, то Вы могли бы записать сценарий, чтобы взять UUID файловой системы, создать точку монтирования для него (под/mnt или везде, где Вы хотели), то смонтируйте файловую систему к точке монтирования.
Везде, где Вам нравится и где это имеет большую часть смысла для Вас. Я видел бесчисленные варианты.
Самостоятельно, я обычно монтирую их в /data0
, /data1
или подкаталоги ниже /data
и помещенные символьные ссылки на соответствующие места (как /home
).
Дополнительные диски обычно монтируются в названном каталоге /media/something
где что-то отражает смонтированное устройство, например. /media/cdrom0
для первого устройства CD-ROM. Эта конвенция широко сопровождается в соответствии с Linux для съемных устройств, и часто но не всегда для постоянных устройств.
FHS запрещает дистрибутивам использование каталогов под /mnt
потому что некоторые администраторы используют /mnt
самостоятельно, поскольку точка монтирования для временного файла монтируется. Если Вы - администратор, можно сделать то, что Вы любите; просто не используйте /mnt
самостоятельно как точка монтирования, если Вы создаете каталоги под ним.
Много мест имеют свою собственную конвенцию. Некоторые утилиты автоматического монтирования имеют свой собственный каталог или каталоги (настроенный через /etc/fstab
и /etc/auto.*
); /amnt
или /auto
типичные имена. Сеть монтируется, часто помещаются под /net/$machine_name
. Некоторые места просто используют то, что прошло ум администратора: /data
, /local
, /scratch
, …
Конечно, файловые системы, которые имеют определенное место в структуре каталогов, должны быть смонтированы там. Например, почтовый раздел обычно монтируется непосредственно на /var/mail
или /var/spool/mail
. Если Ваши корневые каталоги распространены между несколькими дисками, это типично для монтирования их внизу /home
, например. ~alice
= /home/disk0/alice
и ~bill
= /home/disk1/bill
и так далее, если Вы хотите выставить различные диски в корневых каталогах. Если Вы не делаете, то монтируете домашние разделы везде, где Вы любите и создаете символьные ссылки, или автомонтируется в /home
.
SuSE имел/srv как универсальную точку монтирования для связанного с сервером материала.
/var/lib/yourapplication кажется, стандарт, также.
Так как я использую утилиту автоматического монтирования с фиксированными записями для этих вещей, я склонен использовать/automnt.
Медиа, автосмонтированные UDEV (/медиа), перенаправляются через CLAMFS (для поиска вирусов) / экстерну на моей рабочей станции.
Настолько короткий - нет никакого реального стандарта - Вам решать.
/mnt/website
был бы лучше помещен в/srv/website
. – Tom Hale 15.04.2017, 07:35