2009-03-15 1 views
2

Я работаю над некоторым кодом PHP с партнером и одновременно запускаю сервер LAMP (или в моем случае - MAMP) локально на наших машинах. Есть ли способ, которым мы можем работать одновременно на одном и том же фрагменте кода? Для этого потребуются как наши IDE (я использую Zend Studio, он использует PHPed), так и наш сервер MySQL для обновления при любых изменениях.два программиста, работающие по одному и тому же коду

P.S. - Есть ли какая-либо система, которая также позволяет комментировать код в режиме реального времени?

Спасибо.

+0

Ваш вопрос не имеет никакого отношения к [тегу: в режиме реального времени]. Не помещайте без разбора и не используйте стандартную терминологию. – EJP

ответ

4

Не одновременно AFAIK, но вы, как правило, тоже этого не хотите. (Сядьте на том же компьютере, если вам это действительно нужно.)

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

Вы должны проверить какую-то систему DVCS, например Mercurial или Git, что позволяет обмениваться записанными изменениями (aka commits) назад и вперед.

+0

Bazaar - еще одна хорошая альтернатива Mercurial или Git. – thomasrutter

+0

Справа. Есть несколько из них. – Macke

2

Поскольку вы уже используете SVN, тогда можно работать с одним и тем же кодом, и это вопрос совершения, обновления и разрешения возможных конфликтов при слиянии. Немного об обмене информацией о том, какие части приложения каждый из них будет работать, определенно помогает.

Что касается изменений на db, вот как это работает для меня. Каждый разработчик работает на своей локальной машине с локальным экземпляром базы данных, где он может экспериментировать и делать все, что захочет. Когда изменения постоянны, он выполняет SQL-дельта-скрипт, который входит в репозиторий вместе с кодом.

2

Вы можете использовать любой Emacs, и открыть дисплей на другой машине (Mx открытого дисплей) Или вы можете использовать экран или вы можете использовать VNC


Только видел это для Eclipse: http://wiki.eclipse.org/DocShare_Plugin

0

Я в этой ситуации с кем-то еще. Мы в основном работаем над отдельными файлами, а затем проверяем наши изменения на subversion, когда у нас есть что-то, что не сломает сайт. Мы часто проводим регистрацию и обновляем наш код всякий раз, когда другой проверяет что-то.

Другая полезная вещь, которую мы сделали, - это иметь ссылку на нашем тестовом сервере (отдельно от наших установок MAMP на наших локальных компьютерах), которые будут автоматически проверяет последнюю версию php-кода из репозитория и повторно загружает страницу. В основном упростите получение обновлений кода.

1

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

1

Поскольку вы используете MAMP, я полагаю, вы находитесь на Mac. SubEthaEdit предназначен для совместной работы в режиме реального времени. http://www.codingmonkeys.de/subethaedit/

Если вы хотите придерживаться своих разных IDE и нуждаться в изменениях в реальном времени, я думаю, вам нужно написать сценарий самостоятельно.

2

Если вы хотите работать одновременно на одной и той же кодовой базе, но в разных частях кода, SVN - лучший вариант. Но если вам действительно нужна одновременная работа над одним и тем же кодом, вам нужен совместный редактор, например, например. Mozilla Bespin.

В большинстве ситуаций реальной жизни первый вариант, вместе с некоторыми IM, более чем достаточно.