Рабочий процесс удаленной разработки php: git, symfony & hudson

Отредактировано: (после просмотра ответа Люка)

Я ищу разработку веб-сайта, и вся работа будет выполняться удаленно (нет локального сервера разработки ). Причина этого в том, что моя компания общего хостинга a2hosting имеет определенную конфигурацию (symfony, mysql, git), которую я не хочу тратить время на дублирование, когда я могу просто ssh и разрабатывать удаленно или с помощью функций удаленного редактирования netbeans.

Мой вопрос в том, как с помощью git разделить мой сайт на три части: live, staging и dev.

Вот моя первоначальная мысль:

public_html (действующий сайт и репозиторий git)
Я хочу разработать веб-сайт, и вся работа будет выполняться удаленно (без локального сервера разработки). Причина этого в том, что моя компания общего хостинга a2hosting имеет определенную конфигурацию (symfony, mysql, git), которую я не хочу тратить время на дублирование, когда я могу просто ssh и разрабатывать удаленно или с помощью функций удаленного редактирования netbeans.

Мой вопрос в том, как с помощью git разделить мой сайт на три части: live, staging и dev.

Вот моя первоначальная мысль:

public_html (действующий сайт и репозиторий git)
Я хочу разработать веб-сайт, и вся работа будет выполняться удаленно (без локального сервера разработки). Причина этого в том, что моя компания общего хостинга a2hosting имеет определенную конфигурацию (symfony, mysql, git), которую я не хочу тратить время на дублирование, когда я могу просто ssh и разрабатывать удаленно или с помощью функций удаленного редактирования netbeans.

Мой вопрос в том, как с помощью git разделить мой сайт на три части: live, staging и dev.

Вот моя первоначальная мысль:

public_html (действующий сайт и репозиторий git)

У меня вопрос, как с помощью git разделить мой сайт на три части: live, staging и dev.

Вот моя первоначальная мысль:

public_html (действующий сайт и репозиторий git)

У меня вопрос, как с помощью git разделить мой сайт на три части: live, staging и dev.

Вот моя первоначальная мысль:

public_html (действующий сайт и репозиторий git)
тестирование: зеркало сайта, используемого для визуальных тестов (полное репозиторий git)
dev / ticket #: ветки git public_html, используемые для функций и исправлений ошибок (полное репозиторий git)

Контроль версий с git:

Начальная настройка:

cd public_html  
git init  
git add *  
git commit -m ‘initial commit of the site’  
cd ..  
git clone public_html testing  
mkdir dev

Разработка:

cd /dev
git clone ../testing ticket#
all work is done in ./dev/ticket#, 
then visit www.domain.com/dev/ticket# to visually test
make granular commits as necessary until dev is done
git push origin master:ticket#  
if the above fails:
    merge latest testing state into current dev work: git merge origin/master
    then try the push again
mark ticket# as ready for integration

Процесс интеграции и развертывания:

cd ../../testing
git merge ticket#  -m "integration test for ticket# --no-ff (check for conflicts )
run hudson tests

visit www.domain.com/testing for visual test  

if all tests pass:  
    if this ticket marks the end of a big dev sprint:  
        make a snapshot with git tag  
        git push --tags origin  
    else  
        git push origin
        cd ../public_html
        git checkout -f  (live site should have the latest dev from ticket#)
else:
    revert the merge: git checkout master~1; git commit -m "reverting ticket#"
    update ticket# that testing failed with the failure details

Снимки:

Каждый основной спринт развертывания должен иметь стандартное имя и отслеживаться. Метод: git tag Соглашение об именах: TBD

Возврат сайта в предыдущее состояние

, если что-то пойдет не так, возврат к предыдущему снимку и отладьте проблему в dev с новым номером заявки. Как только ошибка будет исправлена, следуйте процесс развертывания снова.

Мои вопросы:

1-Имеет ли смысл этот рабочий процесс, если нет, какие-либо рекомендации 2-Правильный ли мой подход к возврату или есть лучший способ сказать «вернуться к до x фиксации»

Спасибо, что нашли время прочитать этот ОЧЕНЬ длинный пост :)

1
задан user257543 21 September 2010 в 02:09
поделиться