Я же дал ссылку на сайт проекта, там более-менее внятная документация.
В Ubuntu / Debian можно поставить из пакетов, далее в /etc/mercurial-server/access.conf пишем что-то такое:
init user=root/**
deny repo=hgadmin
read user=users/username/* repo=project branch=default
write user=users/username/* repo=project
в /etc/mercurial-server/keys/users/username/key кладем ключ пользователя как в .ssh/authorized_keys
в /etc/mercurial-server/keys/root/key кладем свой ключ
делаем /usr/share/mercurial-server/refresh-auth, как в документации описано
пользователем, чей ключ положили в root, делаем hg clone . ssh://hg@your_server/project из локальной копии.
второй пользователь по тому же адресу клонирует себе, обратно залить он сможет куда угодно, кроме указанной ветки.
«правильное» решение, если очень захотеть, сделать можно, но если это не основная функциональность проекта, оно, скорее всего, нафиг никому не нужно.
обычно есть смысл пожертвовать частью требований (например, идеальной честностью, недопущением повторов) и/или сделать решение, заточенное только под конкретные сценарии (например, много чтений и редкие апдейты), вариантов «тупых» решений тут очень много.
похоже на то что надо, спасибо.
в ветке про Jgmail его тоже упоминали, но что-то на него ругаются, да и я уже успел свой более легковесный патчик накидать =)
менять браузер как-то слишком сурово, возникнет вопросов куда больше, чем решится (чем заменять все используемые аддоны?), лучше не будем устраивать тут холиваров =)
да и полноценный почтовый клиент мне не нужен, иначе Thunderbird бы уже поставил.
увы.
при попытке подключения — «Service Temporarily Unavailable»
при этом логин и пароль проверяет, если ввести неправильные — переспрашивает.
да и не сильно оно похоже на живое — Last updated March 21, 2006
к сожалению, не могу сейчас найти ссылку на статью, где разбирается механизм подсчета ссылок в php и как уживаются references и copy-on-write, но кажется, с хабра я на нее и попал.
короче, вот такой код:
$a = range(0, 100500);
$b = &$a;
$c = $b; // или $c = $a, что одно и то же
создаст две копии исходного массива.
если присваивание по ссылке во второй строке поменять на обычное, или наоборот, третье присваивание сделать по ссылке, то этого не будет.
проверяется функциями memory_get_usage() и xdebug_dump_zval()
время уходит не на «механизм рефкаунтеров» сам по себе (объяснение правильное, но не полное), а из-за того, что мы ссылку потом передаем куда-то еще (в count()).
вот тут-то копия и создается.
пруф: если count($a) поменять на $a[0], все будет ок.
подчеркиваю, разница хорошо заметна на больших размерах массива и одном запуске, а не на 9 элементах и 100500 повторах, где оверхед от вызова функции больше этой разницы.
иными словами, a1 работает за O(1) от размера массива, a2 за O(n).
первая.
потому что во втором случае будет создаваться лишняя копия соответствующего zval-а.
если сделать $a = range(0, 100500), разница в пару раз видна и на одном запуске.
хотелось бы добавить, что там java используется в основном лишь как язык для примеров, упор сделан именно на общие вещи, которые полезно знать всем.
да, «скачать бесплатно без смс без регистрации» сами найдете где ^^
а, я тогда наверное не так понял, что за отступ нужен.
смысл outline тут в том, что на фоне этой рамки будет красный градиент, а не черный цвет (как снаружи).
а аддоном поставить зум везде 80%
мне помогло.