2010-12-01 3 views
2

У меня есть приложение PHP, которое я помогаю поддерживать с одним другим человеком. Текущий процесс очень «свободен» - файлы иногда обновляются непосредственно на сервере или на локальном компьютере, а затем копируются вручную.Система управления и сборки исходного кода PHP

Я знаком с SVN, но, возможно, это не лучший выбор для этого типа размещаемого приложения?

В принципе, я хочу, чтобы система отслеживала любые или все изменения в файлах (управление версиями) и создавала пакет (даже ZIP-файл) измененных файлов, которые я могу развернуть. Главное здесь - я хочу записать любую выполненную работу, а также возможность изменения источника отката.

Есть ли что-нибудь подобное для разработчиков PHP?

+2

Я бы рекомендовал GIT. Проверьте этот вопрос на предмет различий между GIT и SVN: http://stackoverflow.com/questions/871/why-is-git-better-than-subversion – RabidFire 2010-12-01 20:54:11

+1

ЕСЛИ вы уже знаете svn, git может свести вас с ума. – 2010-12-01 21:03:37

+0

@Byron это много отличается ?? – 2010-12-01 21:07:15

ответ

3

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

Однако, похоже, что вы пытаетесь выполнить развертывание (на основе записанного изменения). Для этого вам нужно что-то вроде или, может быть, Fabric.

1

Вы только что описали управление версиями в двух словах. Есть несколько систем, которые могут делать то, что вы хотите, например SVN, Mercurial или GIT. Нет необходимости в специфическом для PHP решении.

+0

Я знаком с SVN, но я не нашел его полезным для этого конкретного сценария. У меня был SVN-репозиторий на моей локальной машине, но процесс определения файлов, которые были изменены, и копирование их в производственную среду по-прежнему является руководством, любые предложения для этого? – 2010-12-01 20:58:40

1

Поскольку вы уже упомянули Subversion, возможно, стоит посмотреть на Beanstalk. Они предлагают SVN и Git хостинг и позволяют настраивать серверы для легкого развертывания.

Git или Mercurial также может быть очень полезен, когда «нажимать» обновления на живой сервер, который по сути является своего рода развертыванием.

Смежные вопросы