-1

требование

Изменения будут внесены в каталог REPO, и он должен быть обновлен до wc(рабочая копия), в отличие от обычного способа WC> REPO.

Senario:

Мой svn repo- /var /www /svn /drupal

Мой заказ-каталог / рабочая копия- / var / www / html / drupalsite

Итак, я сделал:

  1. отредактированный хук post-commit содержит: "/usr/bin/svn update /var /www /html /drupalsite"

  2. Я не буду вносить изменения в SVN WC. Я внесу изменения в svn REPO- /var /www /svn /drupal.

  3. После внесения изменений в репозиторий svn запустите «svn commit /var /www /html /drupalsite». Это вызовет хук после фиксации. Этот inturn будет запускать «svn update /var /www /svn /drupal», и, таким образом, мой WC будет обновляться с изменениями REPO.

запрос

а. Помогут ли вышеуказанные шаги 1-3 выполнить мое «Требование»?

б. Мне нужно посоветовать, как проверить, работает ли вышеуказанная установка успешно или нет. Я в недоумении по поводу успеха шагов 1-3, почему присутствует запрос (а). Это немного больше беспокоит меня.

NB: я новичок в подрывной деятельности. Все, что я настроил до сих пор, было сделано путем чтения статей в Интернете. Причина запроса (б) в том, что я не в разработке. Кажется, это веб-сайт php drupal, и я настраиваю его. Так что я не знаю, как сделать "правильное" изменение в REPO, чтобы оно отражалось в WC. Если задуматься, мои конфиги верны и команда может начать разработку. Я вручную поместил случайный файл / папку в каталог REPO для просмотра изменений в WC и выполнил шаги 1-3, но безрезультатно, а позже узнал, что это НЕ был способ внести изменения в REPO.

Пожалуйста, советую. Спасибо

2 ответа2

1
  1. Вы не можете вносить изменения в репозиторий напрямую - это база данных, а не "зеркало реального дерева"
  2. Вы не можете выполнять "странные", плохие команды (svn commit /var/www/html/drupalsite ) и ждать и получать хорошие ожидания от хороших результатов команд

Ваш рабочий процесс («Сайт как WC, обновленный с помощью коммитов из другого WC») будет работать, когда у вас будет фиксированный рабочий процесс

Как это должно работать

  1. Создать (или иметь) SVN-репозиторий по пути /var/www/svn/drupal
  2. Определите размещение своей собственной рабочей копии (в дальнейшем WC-Work), в которой вы будете вносить изменения в код (это может быть тот же хост, который содержит Repo и сайт, или любой другой, с которого вы можете связаться с Repo)
  3. В зависимости от выбора местоположения WC-Work, может потребоваться настройка и запуск SVN-сервера на хосте Repo (svn:// или http:// для удаленного доступа). Определить и запомнить URL репозитория (далее REPO-URL)
  4. Преобразуйте /var/www/html/drupalsite в рабочую копию (далее WC-сайт) вашего хранилища: svn co REPO-URL
  5. Защитите .svn dir WC-сайта с помощью правила .htaccess
  6. Подготовить WC-Work: svn co REPO-URL
  7. Добавить хэнд после коммита в репо (хук это приемлемая отправная точка)
  8. Работа-работа-работа в WC-Work
  9. Зафиксируйте изменения из WC-Work
  10. Проверьте состояние сайта

Зоны улучшения

Для п.3: вы можете определить пользователя WC-сайта как пользователя только для чтения, который не может зафиксировать сайт ни при каких условиях

Для п.7: ловушка может публиковать в ревизии WC-сайта только от пользователя WC-Work, возможно, придется опубликовать только некоторые URL-адреса (более одного, который был проверен изначально, и если он правильный - нужно переместить WC-Site перед обновлением), в случае политики "Единой точки публикации": фиксации за пределами точки публикации могут игнорироваться (если продвигается только транк, мы ничего не можем сделать для фиксации в ветвях | тегах)

0

Просто сделай diff - см. Svn diff.

Или получить ноутбук.

Также смотрите ствол и ветку - http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.diff.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .