Что лучший способ состоит в том, чтобы использовать SVN для управления версиями сайт PHP?

np.dot должен быть вашим другом. http://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.dot.html

11
задан Rich Bradshaw 22 September 2008 в 20:05
поделиться

12 ответов

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

8
ответ дан 3 December 2019 в 05:59
поделиться

Необходимо посмотреть на установку rsync для загрузки изменений в сервере.

Rsync является большим, потому что он сравнивает Вашу локальную копию repo к копии, это в настоящее время находится на сервере, и затем только отправляет файлы, которые изменились.

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

Rsync также позволяет Вам исключить файлы/папку (т.е. .svn/папки) при синхронизации между серверами.

3
ответ дан 3 December 2019 в 05:59
поделиться

Для быстрых обновлений я просто работаю svn update с сервера.

Иногда для действительно действительно быстрых обновлений я редактирую файлы с помощью энергии и фиксирую их с сервера.

Это не является очень надлежащим, но быстрым и довольно надежным.

2
ответ дан 3 December 2019 в 05:59
поделиться

Я рекомендовал бы продолжать использовать Подверсию для отслеживания всех изменений, даже исправлений ошибок. Когда Вы хотите развернуться к своему рабочему серверу, необходимо использовать SSH и вызов svn update. Этот процесс может быть автоматизирован с помощью Capistrano, означая, что можно сидеть в локальном поле и вызове cap deploy - Capistrano будет SSH в Ваш сервер и выполнять обновление Подверсии. Сохраняет большой утомительный физический труд.

3
ответ дан 3 December 2019 в 05:59
поделиться

Если Вы хотите сделать это правильно, необходимо определенно изучить установку локального репозитория SVN. Я также настоятельно рекомендовал бы установку сервера непрерывной интеграции (CI), такого как круиз-контроль, который автоматически запустит любые тесты против Вашего кода PHP, когда когда-либо Вы зарегистрируетесь к svn. Ваш сервер CI мог также использоваться для публикации файлов через FTP к хосту при щелчке кнопки, после того как это прошло тесты.

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

1
ответ дан 3 December 2019 в 05:59
поделиться

Для моих проектов у меня обычно есть repo. На моем ноутбуке рабочая копия, и живой веб-сайт является рабочей копией. Я вношу свои изменения на локальной копии, с помощью моего локального веб-сервера. Когда все тестируется и готово пойти, я фиксирую изменения, затем я ssh в обновление svn и удаленный сервер.

Я также сохраняю папку в этом репозитории, который содержит sql файлы любых изменений, которые я внес в структуру базы данных, маркированную согласно их числу пересмотра. Например, когда я фиксирую Пересмотр 74, и он имеет пару дополнительных столбцов в одной из таблиц, включенный в фиксацию будет dbupdates/rev74.sql. Тот путь, после того, как я делаю свое обновление svn, все я просто, должен выполнить мой sql файл (mysql db_name-p-u имя пользователя <dbupdates/rev74.sql), и я хорош для движения.

1
ответ дан 3 December 2019 в 05:59
поделиться

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

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

1
ответ дан 3 December 2019 в 05:59
поделиться

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

Это поможет в отладке и может сделать Ваш код выполненным быстрее. Кроме того, вхождение в привычку сборки действительно улучшило мое кодирование просто продвижение PHP прямо к серверу и отладке с помощью Firefox.

1
ответ дан 3 December 2019 в 05:59
поделиться

Я использую ZendStudio для Eclipse (в настоящее время версия 6.1). И я использую SVN для хранения моих исходных кодов доступными. Первоначально я думал, что процесс был несколько медленным должный фиксировать процесс (и ввод комментария фиксации) и ожидать, пока он не останавливается.

Однако после изучения, что Ctrl+Alt+C, чтобы Фиксировать и проверить 'Всегда выполняемый в Фон', процесс не замедляется вообще.

Плюс, я действительно выполняю все локально, затем только SSH через некоторое время.

0
ответ дан 3 December 2019 в 05:59
поделиться

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

0
ответ дан 3 December 2019 в 05:59
поделиться

То, что я делаю на работе, является использованием FTP для загрузки изменений в тестовом сервере. Затем, когда я закончен с разделом сайта, что я продолжал работать, я фиксирую изменения и обновляю обоих. Иногда, если я работаю над чем-то, и я изменяю много файлов в различных каталогах, я фиксирую его и обновляю тестовый сервер. Но я не обновляю рабочий сервер. Но я - единственный программист здесь, я не рекомендовал бы фиксировать possibally содержащий ошибки код, если существует больше чем один программист.

0
ответ дан 3 December 2019 в 05:59
поделиться

ЕСЛИ на *отклоняют сервер, И у Вас есть соответствующий доступ SSH, И у Вас есть пространство для хранения нескольких копий веб-сайта, ТО единственный самый полезный метод управления версиями, который я нашел, состоит в том, чтобы использовать символьную ссылку для указания на "текущую" версию веб-сайта. (Можно все еще использовать SVN для управления версиями исходного кода - это - способ легко/немедленно переключиться между версиями веб-сайта на сервере.)

  1. Настройте веб-сервер для указания на /whatever.com как корень веб-сайта.

  2. Имейте папку как/website/r1v00 к который Вы FTP файлы веб-сайта, затем создайте символьную ссылку под названием "whatever.com", который указывает на/website/r1v00

  3. Когда Вы имеете обновленную версию веб-сайта, создаете другую папку, названную/website/r1v001, FTP все файлы для обновленного сайта, затем изменяете символьную ссылку для "whatever.com", чтобы теперь указать на/website/r1v01. Если существуют какие-либо проблемы с новым сайтом, можно поддержать его немедленно путем простого указания на символьную ссылку "whatever.com" назад на/website/r1v00

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

Очевидно, это не решает проблем со схемами базы данных управления версиями или содержанием базы данных.

0
ответ дан 3 December 2019 в 05:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: