Правильный способ использовать GIT для разработки сайтов? - PullRequest
3 голосов
/ 06 апреля 2011

Итак, я обыскал этот сайт, я прочитал учебник на gitimmersion.com и другие, но у меня все еще есть вопросы, на которые, я надеюсь, кто-то может ответить.

В основном у меня естьвеб-сервер, на этом сервере у меня есть два домена: dev.domain.com и основной сайт www.domain.com.

В данный момент «рабочий» домен - это страница-заполнитель, которая скоро появится, и dev.domain.com является действующим рабочим сайтом.В конце концов, git может / будет использоваться для обработки переходов от разработчика к производству, но на данный момент сайт все еще находится в стадии разработки.

В последнее время, из-за того, что в проект присоединилось еще несколько человек, я решилиспользовать контроль версий, в частности, git.Я настроил webroot моего домена dev в качестве репозитория и перенес его в codebasehq.

Вот где я запутался.

Я понял, какпроверить код, вытащить его, нажать его, сделать коммиты и т. д. То, что я не понял, - это правильный способ действительно протестировать разработку.Позвольте мне уточнить это предыдущее утверждение примером:

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

Как мне это сделать сейчас?

Можем ли мы все иметь учетные записи на коробке и сидеть внутри рута разработчика.сайт domain.com и редактировать / тестировать правки?Нужен ли нам каждый собственный маленький сервер LAMP для тестирования на наших рабочих станциях?

Я действительно не понимаю, как правильно справиться с этим.Если я проверю код на своем локальном компьютере, я смогу редактировать файлы в соответствии с содержанием моего сердца, но в итоге мне придется делать 400 коммитов / толчков только для проверки и внесения исправлений каждый раз, когда я забываю точку с запятой, поскольку у меня нет возможностидля локального тестирования.

Я что-то упустил или просто ответил: "Конечно, вы можете редактировать в webroot, и он будет отслеживать изменения для каждого пользователя" или «Нет, вам всем нужен свой собственный способ тестирования кода перед его выпуском»

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

В качестве резюме, вот что я пытаюсь сделать:

Веб-сайт для команды из трех человек;dev.domain.com - это область "тестирования / разработки" на моем веб-сервере.В какой-то момент www.domain.com станет точкой приземления производства.Все члены команды разработчиков имеют доступ по ssh и учетные записи на сервере.

Как связать все это вместе с git, имея в виду, что локальная среда тестирования на моей домашней машине не идеальна (нои я уже создал учетную запись на codebasehq.com в качестве основного репозитория git, созданного из webroot на dev.domain.com.

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 29 апреля 2011

Это то, что я делаю (здравомыслящие люди могут не согласиться):

1) Тестируйте локально, используя стек LAMP на моей рабочей станции, в то же время фиксируя git на ходу.

2)Когда я готов реорганизовать свое местное отделение, я стремлюсь к происхождению.Репозиторий находится на моем рабочем сервере.

3) Когда мы хотим выполнить тест развертывания, он идет на поддомен тестирования на рабочем сервере, скажем test.foo.com.

Thisвот где это сложно: предположим, что корневым каталогом документа для рабочего сайта является 'foo.com/httpdocs'.Это символическая ссылка на один из foo.com/httpdocs1 или foo.com/httpdocs2.Корень документа поддоменов также является символической ссылкой на другой каталог, поэтому, если для продукции задано значение httpdocs1, тестирование - это httpdocs2.

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

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

0 голосов
/ 06 апреля 2011

Вы должны тестировать локально, и только вставлять код, который работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...