Работа с джуниором и проектрование ТЗ.

LONGMAN

Dark Side of the Moon..
Автор оригинала: akd
ставь на своей машине просто свн сервер.
Другие смогут работать на мой svn по сети?

-~{}~ 27.10.10 02:16:

Автор оригинала: A1x
используйте вместо свн mercurial
Какие у него преимушества по сравнению с svn?
 

Crys

Двинутый новичок
Другие смогут работать на мой svn по сети?
да, так же как и если ты расшаришь папки, к ним можно будет получить доступ по сети.. так же, как если ты создашь сетевую игру в дюке нукеме, к ней смогут подсоединиться из твоей сети.. а при наличии уличной магии - и из интернета.
 

A1x

Новичок
Какие у него преимушества по сравнению с svn?
svn является централизованной системой клиент-сервер, а mercurial - это децентрализованная система контроля версий (DVCS) - например, для нее нее не нужен центральный сервер
почитать можно начиная с http://ru.wikipedia.org/wiki/Mercurial и дальше по ссылкам
 

LONGMAN

Dark Side of the Moon..
A1x
Спасибо за объяснения. Возник один вопрос, почему на почти всех php проэктах используется svn а не mercurial? Может svn стал стандартом де-факто?
 

AmdY

Пью пиво
Команда форума
LONGMAN
стал, но его время уходит, как некогда cvs. главный недостаток svn - сложность мержинга веток. я ветвлениями практически не пользуюсь, потому не пытаюсь перейти к mercurial, от добра добра не ищут
 

A1x

Новичок
svn стал стал стандартом де-факто и не только для пхп проектов потому что он исторически появился раньше (2001 г) к тому же появился не на пустом месте а как замена CVS, которая широко использовалась до того.
Mercurial же начал разрабатываться только в 2005
 

zerkms

TDD infected
Команда форума
я ветвлениями практически не пользуюсь
AmdY
Потому ты ими и не пользуешься, что они вносят дискомфорт. В меркуриале и гите, где ветви само собой разумеющиеся вещи и где их создание и поддержка очень дешевы - им сразу же находится применение. Подтверждено миллиардами перешедших с свна :) Просто попробуй :)
 

флоппик

promotor fidei
Команда форума
Партнер клуба
а mercurial - это децентрализованная система контроля версий (DVCS) - например, для нее нее не нужен центральный сервер
Глупость какая. То что она распределенная, не значит, что для нее не нужен центральный сервер. Не, ну технически можно и диффы почтой слать между разрабочиками, но на практике - это пустые слова: они все централизованы. Другое дело, что у них (DCVS) не обязательно коммитить все свои модификации сразу, имея возможность вести бранч, и слить его достаточно безболезненно с другими бранчами в мастер-бранч _независимо_ от порядка сливания бранчей.
 

zerkms

TDD infected
Команда форума
флоппик
нуууууу.... как сказать. децентрализованность, в частности, значит и то, что источником и целью push'ей/pull'ов может быть не один (центральный) репозиторий, а вообще любой.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
нуууууу.... как сказать. децентрализованность, в частности, значит
я то понимаю что она значит в данном контексте. Меня просто всегда удивляет, когда доморощенные сторонники Гита/меркуриала/базаара это приводят основным (а часто и единственным) преимуществом то, что не существует на самом деле.
Хотя думаю, это проблема неправильного перевода - ведь они не децентрализованные, а распределенные (distributed) системы контроля версий. И как раз такое наименование снимает всякие непонимания.
Что не умаляет заслуг и качеств DVCS, на самом деле :)

-~{}~ 28.10.10 07:39:

источником и целью push'ей/pull'ов может быть не один (центральный) репозиторий, а вообще любой
Как написал какой-то из крутых Git-чуваков: «У нас все репозитории равноправны. Просто один репозиторий демократично выбирается равноправней других»
 

A1x

Новичок
флоппик в свн есть "репозиторий" и "рабочая копия" и это технически разные вещи. В меркуриал это одно и то же, уже потом можно назначить каждому репу свою роль (понятно что разные роли должны быть)

в чем по-твоему различие между децентрализованностью и распределенностью?
 

Farsh

~ on ~ high ~ wave ~
Добрый день)
Требуется небольшая помощь по работе в команде ( тема похожая, новую решил не создавать ).

И так, имеется:
a) рабочая машина
b) сервер
c) новый прогер

До сего момента я работал над внутренним проектом в одиночку:
SVN использовал только в качестве хранилища истории ( тупо в транке ) и синхронизации кода на свои разные рабочие машины;
часто тестировал приложения прямо на серваке ( то есть написал код -> через rsync вгрузил -> проверил; раньше делал дампы на локальную БД, но сейчас они по размерам стали огромные, что постепенно практически заставило отказаться от "локального lamp" )

Соответственно прошу советов, как это должно делаться "правильно" ?
Вот сейчас появился второй прогер, которому также нужны реальные данные с сервака.
Что делать ? Как вообще организовать работу ? Открыть внешний доступ к БД ( ну или через ссх туннель ) ?
Или может поставить вторую БД на тот же сервак и использовать ее как тестовую, на которую будет идти синхронизация с основной БД ?
Вообще, какие есть best practice's ?

Спасибо.
 

Ragazzo

TDD interested
Farsh
сделай ему свой бренч, пусть туда коммитит, елс что в транк переносите потом, доступ к БД лучше сделать 1 пользователя(унифицированно), чтобы все работали с БД с одного юзера, а ssh по необходимости...не вижу тут особых проблем
 

Farsh

~ on ~ high ~ wave ~
>> не вижу тут особых проблем
Я просто хотел узнать, как это вообще делают люди, работающие в команде, ибо у меня в этом абсолютно нулевый опыт

>> сделай ему свой бренч, пусть туда коммитит, елс что в транк переносите потом
А зачем ? После какого момента нужно делать перенос в транк ?
А почему нельзя тупо всем использовать только транк ? Раз, нашел багу, сразу пофиксил. Я сделал апдейт из svn и деплой на сервер.

>> доступ к БД лучше сделать 1 пользователя(унифицированно), чтобы все работали с БД с одного юзера
То есть БД должна быть всего одна ( та, что на сервере ) и она же будет использоваться как тестовая всеми прогерами ?
А в чем преимущество сделать 1 пользователя ( root? ) ?
 

Ragazzo

TDD interested
Farsh
Насчет транка: Транк это стабильная безбажная версия(теоритически), если каждый сразу же будет в него коммитить будет неразбириха, что-то доказывать если ты не понимаешь зачем надо так, не вижу смысла, комитьте в транк, когда наткнешься на грабли - поймешь..10 программистов коммитящих сразу же в транк, создадут нехилую головную боль...В транк надо переносить ту часть, которая в бренче стабильно работает и без багов...
Насчет БД: преимущество в том что не будет проблем с привелегиями и прочей фигней, в разработке все должно быть четко и по стандартам, конечно если не доверяешь программисту второму можешь его посадить только за SELECT...
 

zerkms

TDD infected
Команда форума
Ragazzo
Кстати зависит от подхода. Часто транк как раз это нестабильная куча, а стабильная - отдельная ветка :)
 

Ragazzo

TDD interested
zerkms
Согласен,часто нестабильная куча, это изза того что 10 программистов делают работу с подходом "А почему нельзя тупо всем использовать только транк ?"
 

zerkms

TDD infected
Команда форума
Ragazzo
Неправда :) Это такая же стандартная практика.

Практика "стабильный транк" ничем не лучше и не уникальнее, чем "нестабильный транк". Всё зависит от выбора команды.
 
Сверху