Какая самая простая и простая платформа для совместной разработки (проект PHP)? [закрыто]

14

Мне нужно работать с 4-5 программистами в довольно обычном PHP-приложении, использующем codeigniter. Мы в 5 разных местах в одном городе, и все программисты не слишком хорошо образованы, и я предполагаю, что большинство из них никогда не использовали какую-либо систему контроля версий.

Можете ли вы порекомендовать какую-то очень простую платформу для совместной работы над таким проектом? Я говорю о чем-то более сложном, чем общая папка Dropbox.

Esuus
источник
Вы использовали github в качестве тега. Github очень хорош - у вас есть деньги для частного репо?
Я рекомендую SourceAnywhere Hosted. Использование продукта очень интуитивно понятно. На самом деле, если вы ищете для контроля версий, вы найдете много хороших предложений / инструментов. Если вы хотите сократить кривую обучения, помимо самого продукта, помните о «хорошем обслуживании клиентов» при выборе продукта. Потому что это означает, что вы получите хорошую подготовку и техническую поддержку от компании.
ветрено

Ответы:

12

Вы уже знаете ответ

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

Я бы посоветовал им прочитать Pro Git и создать частный репозиторий для вашей команды.

Craige
источник
2
У меня нет возможности выбирать других разработчиков и обучать их управлению версиями. Поверь мне, я бы предпочел оба. Но я не могу - вот почему я задал этот вопрос. Есть много девоперов-любителей, что они используют?
Эсус
6
Они изучают надлежащие инструменты или остаются младшими навсегда.
Адриан Шнайдер
2
@Esuus Это не займет много времени, чтобы изучить git: try.github.com/levels/1/challenges/1
VirtuosiMedia
3
@VirtuosMedia Я не думаю, что Git - это просто, SVN гораздо проще понять.
Матей Забский
1
Я не знаю о Git, но TortoiseSVN позволяет действительно неопытным пользователям иметь дело с SVN.
Брайан
4

... FTP

Хорошо, вот как я начал сотрудничать, подключая Notepad ++ к FTP, создавая резервные копии каждые 10 минут в переименованных папках, но если вы это сделаете, ради вашего проекта по крайней мере используйте контроль версий на сервере.

Интернет IDE

Cloud9 очень хорош и имеет параллельное редактирование, однако, это будет стоить вам иметь более 1 частного рабочего пространства для работы с вашей командой, но оно того стоит.

... попробуйте Mercurial

Если вы не нашли подходящего Git для своих коллег, попробуйте Mercurial с TortoiseHG, который является клиентом с графическим интерфейсом для Mercurial. Это займет у них две минуты для настройки и меньше, чтобы начать использовать его.

Пусть они используют графический интерфейс, им просто нужно научиться использовать 4 кнопки («тянуть», «обновить», «зафиксировать», «нажать») и изучить 2 или 3 концепции, чтобы сохранить и поделиться своей работой.

Попросите их зарегистрироваться в bitbucket . Создайте репозиторий для вашего проекта, и пусть они раскрутят его, чтобы они могли работать в своем собственном зеркале репозитория и таким образом им не приходилось иметь дело со слиянием. Вы выполняете интеграцию и просто просите их выдавать запросы на извлечение из своей вилки Bitbucket после их отправки. Пусть они извлекают только из вашего хранилища (того, из которого они разветвлены).

Изучите Mercurial, чтобы решить все связанные с этим проблемы, это хорошее начало: http://hginit.com/

Попробуйте оба

Вы можете использовать Mercurial из Cloud9, насколько это круто?

Хватит предполагать

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

Будьте в восторге от этого не покровительствовать.

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

dukeofgaming
источник
Я чувствую, что это лучший ответ, так как он единственный, который на самом деле отвечает на вопрос вместо того, чтобы покровительствовать спрашивающему. Я особенно ценю советы о том, как сделать Mercurial проще для людей (избавляясь от слияния и интеграции). Это кажется самым простым способом контроля версий с людьми, которые не хотят участвовать. Благодарность!
Даллин
3

Я рекомендую вашим разработчикам http://try.github.com

Но если контроль версий невозможен, вы можете придерживаться чего-то подходящего для самого начинающего / младшего, который является базовым (и архаичным).

  1. APP + БД на сервере разработки
  2. Все участники одного и того же посыльного все время работают, чтобы они могли говорить и знать, кто работает
  3. Все редактируют жить на сервере DEV через старый старый FTP
  4. Обеспечить соблюдение правил группы по обновлению журнала изменений с помощью их ревизий + критические замечания по коду

Установкой для веб-папки вашего сервера разработки также может быть svn checkout (или git), и вы можете настроить crontab на автоматическую фиксацию ревизий время от времени автоматически, или вы можете просто установить резервную копию или, возможно, rsync для папки в какое-то другое место резервного копирования, когда они перезаписывают файлы друг друга (как это будет происходить), и вам нужно дать Бобу его изменения, которые он потерял. В конце концов, после нескольких месяцев работы с системой, они будут просить вас предоставить им доступ к SVN / GIT.

Энтони Хатзопулос
источник
Несмотря на то, что все ответы здесь были полезны (и из-за них я сейчас серьезно думаю, есть ли способ заставить их изучать GIT / SVN), вы единственный, кто действительно ответил на мой вопрос. Спасибо чувак.
Esuus
2

Я предполагаю, что большинство из них никогда не использовали систему контроля версий.

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

Как уже говорили другие ответы, для этого предназначен контроль версий. Git, вероятно, лучший путь вперед, и Learn Git - действительно хорошая отправная точка

Эми
источник
2

Ну, нет выхода, кроме как использовать контроль версий .

Dropbox действительно имеет своего рода контроль версий , но я считаю, что если два человека сохранят файл, более новая версия просто заменит старую версию, что нежелательно для контроля версий во время разработки программного обеспечения.

Svn - это простая в освоении (по крайней мере, проще, чем git) система контроля версий, и вы можете найти различные публичные репозитории, размещенные в Интернете, но я бы не рекомендовал ее для географически распределенных команд.

Таким образом, путь для распределенных команд - это git. Если ваш источник общедоступный ИЛИ покупка частного плана не является проблемой, то создайте репозиторий на github , в противном случае настройте локальный репозиторий git.

Может быть, вы можете найти графический интерфейс для git, который может помочь этим разработчикам начать осваивать систему контроля версий концептуально. Для Windows это TortoiseGIT . Я не использовал ни одного клиента git gui для Linux или MAC, поэтому я не буду рекомендовать его здесь.

Озаир Кафрай
источник
У Dropbox есть одно преимущество: вы можете использовать людей, которые никогда в своей жизни не использовали системы контроля версий. Это может быть большим преимуществом при работе с профессорами науки ...
Донал Феллоуз
GitHub также имеет частные репозитории, если вы не хотите делать свой код общедоступным.
VirtuosiMedia
@VirtuosiMedia Да, я знаю это, но я не уверен, что они бесплатны.
Озаир Кафрай
@OzairKafray Они не бесплатны, но они довольно недороги. Самый маленький план дает вам 5 частных репозиториев за 7 долларов в месяц плюс неограниченное количество публичных.
VirtuosiMedia
2

Вы на правильном пути

Это version controllingпуть! Это будет хорошо работать для совместного использования кода и поможет с интеграцией. Кроме того, частые проверки являются очень важной дисциплиной, которую должна практиковать вся команда.

Однако, выбор правильного контроля версий для вашего проекта очень важен.

Недавно появилось приятное сообщение и ответы, которые помогут вам решить: каков хороший игрушечный пример для обучения управлению версиями?

Юсубы
источник