Работа удаленно стала намного более распространенным в веб-разработке за последние несколько лет. Перед контролем версий работают удаленно на тот же проект разработки, был бы абсолютный кошмар. Разработчики пришлось бы Отправить большие файлы друг другу (возможно, по электронной почте), вставляя в своем собственном коде, прежде чем отправлять его обратно. Там не было реального способа отслеживать, что было добавлено и когда.
К счастью, контроль версий прибыл и сделал развитие на всех фронтах намного более управляемой. Веб-проекты стали намного проще реализовать и управлять, особенно когда речь идет о работе в команде удаленной разработки. Вам больше не нужно беспокоиться о текущей версии веб-сайта, который перезаписан - каждый член команды свободен работать в любом файле в любое время, нет путаницы от того, где хранятся последняя версия файла - и вершина облачное хранилище Помогает с процессом тоже.
В этом руководстве мы будем использовать Гадость управлять нашим кодом. Там есть множество различных типов элемента управления версиями, такими как Bitbucket и TFVC, но даже если они все разные, принципы остаются прежними, когда речь идет о управлении кодом.
Для более способов облегчить процесс создания вашего сайта, см. Наши руководства на вершину Строитель сайта и веб хостинг служба.
Во-первых, очень важно иметь успешную модель разветвленной модели при работе в любой команде, чтобы сделать процесс разработки и развертывания плавно работать. Скорее всего, вы будете иметь несколько разработчиков, работающих над тем же проектом. При работе с удаленной рабочей силой я считаю, что лучший рабочий процесс состоит из трех основных ветвей, а также набор временных:
Также будет набор ветвей функций. Тем не менее, это просто будет временным, чтобы изначально построить новые функции.
Предположим, вы запустите команду с двумя разработчиками, которые работают удаленно. Мы назовем их Сара и Джеймсом: они оба работают на одном веб-сайте электронной коммерции для клиента. Сара должна разработать функцию, которая регистрирует детали клиента.
Мы сломали это на три отдельных история пользователя - добавляя, редактирование и удаление - а затем добавьте эти три билета в отставку Sprint.
Итак, скажем, что Сара начинается в разделе добавления деталей клиентов. Ей нужно будет создать функцию филиала «Клиент-подробность» и пользовательскую историю для первой задачи «Добавить детали».
GIT Checkout Development & AMP; & amp; Git Pull Origin / развитие
Git Checkout -b Функция / Детали клиента
Git Checkout -b Добавить детали
Сара будет продолжать работать над временным филиалом «Add Add Address» локально и совершать свою работу по мере развития. Теперь, скажем, что Джеймс хочет помочь Саре с помощью функции клиентов, поэтому он начинает работать над удалением деталей.
Джеймс вытащил бы последнюю версию общего ветви и создать новую ветку для пользовательской истории «Удалить-детали». Затем он может начать делать свои собственные дополнения, не беспокоясь о перезаписи кодекса Сары.
Функция Checkout Git / Детали клиента
Git Pull Origin / Функция / Подробнее
GIT Checkout-b Удалить детали
Он также будет использовать свой временную ветвь для локально и совершать любые изменения. Однажды Сара закончила свою особенность на местном уровне, она ставит билет в обзор кода. Она будет толкать свой код на промежуточную ветку и открыть запрос на тягу с помощью обстановки.
// она толкает свой код на промежуточную ветку
Git Push Orce Add-Detailes
// она открывает запрос на тягу с помощью обстановки
GIT Запрос-тяговая постановка Add-detail
Теперь у нас есть филиал функции клиентов, а также две функциональные филиалы двух пользовательских историй в разработке «Add-Details» и «Удалить детали».
Как только ее код будет рассмотрена, она может объединить свою ветку в постановку. Билет сейчас находится в колонке валидации, ожидая проверки от ведущего разработчика.
// Она получает последнюю версию промежуточной ветки
Git Checkout Checkout & AMP; & amp; Git Pull Origin / постановка
Git Merge add-detail & amp; & amp; Git push Произойти
// она строит среду проверки
// и просит владельцу продукта проверять
Как только работа Сары была подтверждена, билет может быть перемещен в законченный столбец. Она может объединить свою работу в филиал функции и начать другую историю пользователя, как удаление деталей клиентов.
// она тянет последнюю версию филиала функции
Git Checkout Функция / Детали клиента
Git Pull Origin Hapition / клиентские детали
Git Merge Add-адрес и AMP; & amp; Функция Git Push Origin / детали клиентов
Когда вся особенность была подтверждена как ведущим разработчиком, так и клиентом, Sarah может объединить филиал функции в развитие, так как она готова к работе.
// Она получает последнюю версию разрабатываемого ветви
Git Checkout Development & AMP; & amp; Git Pull Origin / развитие
Функция Git Merge / Customer-Detail & AMP; & AMP; Git Push Origin развивается
Как только все завершено, и он готов к развертыванию в производстве, Джеймс объединяется в выпуск и запускает развертывание. На данный момент он будет знать, что весь код правильный, и клиент доволен. Он мегает фиксацией выпуска, чтобы получить историю каждой версии.
GIT Checkout Development & AMP; & amp; Git Pull Origin / развитие
Git Checkout Release & AMP; & amp; Git Pull Origin / Release
Git Merge Development & AMP; & amp; Git Tag 2.1.
Git Push Origin Release --Tags
Этот рабочий процесс удаленного развития может быть довольно сложно понять сначала понять, но если вы получите свою команду для работы по этому методу, то у вас есть бесплатный рабочий поток без необходимости паники о перезаписании файлов или разработчиков, работающих на одной области.
Есть некоторые ключевые вещи, чтобы помнить:
GIT CO Разработка & AMP; & amp; Git Pull Origin / развитие
GIT филиал -d постановка и усилитель; & amp; Git Push Origin --дет постановку
Git Co -B постановка и усилитель; & amp; Постановка Git Pull Origin
С меньшими проектами вы можете использовать менее сложный рабочий процесс. Вы можете использовать Master, который содержит максимально современный версию, разрабатывать ветку, а затем набор ветвей для каждой дополнительной функции - будь то форум, контактная форма, система оформления заказа. Все зависит от ваших личных предпочтений.
Работа с конфликтами слияния сложно, если вы все работаете в одной комнате, но они могут стать еще более кошмаром, если вы все работаете в другом офисе. Самое главное, чтобы помнить, что вы всегда можете отменить слияние и вернуться назад в состояние, прежде чем произошел конфликт.
Независимо от того, делаете ли вы все слияния в качестве ведущего разработчика или вашей команды, являются теми независимо, первый шаг - понять, что произошло.
Git скажет вам, что у вас есть Незаветные пути через Статус Git. :
$ GIT статус
# На филиал Checkout-System
# У вас есть неподвижные пути.
# (исправить конфликты и запустить «GIT Commit»)
#
# Незаветшие пути:
# (используйте «Git Add & lt; file & gt; ...», чтобы пометить разрешение)
#
# Оба модифицированы: checkout.html
#
Никаких изменений не добавлено для совершения (используйте «Git Add» и / или «GIT Commit -a»)
Теперь наиболее распространенной причиной конфликта является когда изменения влияют на одни и те же файлы на одной линии. Итак, давайте посмотрим на содержание конфликтующей линии. Вы заметите, что Git действительно хорош в том, что он отметит конфликтующуюся область, включив его в & lt; & lt; head; и & gt; & gt; & gt; & gt; & gt; [другое / филиал / имя] Отказ В этом случае это Оформление системы Отказ
& lt; & lt; & lt; ГОЛОВА
Эта линия была предана при работе в филиале «форма пользователя».
=======
Эта линия, напротив, была совершена при работе в филиале «Оформиться к системе Checkout».
& gt; & gt; & gt; & gt; & gt; & gt; Refs / Heads / Checkout-System
Содержимое после первого маркера происходит от вашего текущего рабочего ветви. После угловых скобок Git сообщает нам, от какую ветвь произошла изменения. Линия с ======= отделяет два противоречивых изменения.
Теперь вы можете просто открыть файл в редакторе, искать маркеры конфликтов и сделать любые необходимые модификации. Когда вы закончите, файл должен выглядеть именно так, как вы хотите, чтобы он выглядел или, альтернативно, вы можете сказать Git, что вы просто пойдете с одним из редактированных версий, называемых наш или же их Отказ
GIT Checkout Tours Path / to / Conffull-file.html
Существует также множество приложений для инструментов Merge, которые могут помочь с этим. Калейдоскоп - отличный для Mac.
Это так же важно, как разработчик ведущего, чтобы иметь инструмент управления проектами для управления вещами, такими как задачи и ошибки, особенно когда ваши разработчики не основаны на Office. Там есть множество решений, таких как Zenhub и Asuna, но я считаю, что встроенный проект Github и система выпуска - лучшая.
Вы можете делать такие вещи, как создать новый проект, создавать доски или назначить проблемы. И не просто запутайте проблемы с проблемами: вы также можете использовать его для улучшений, вопросов и ошибок, среди прочего.
Вот несколько лучших функций:
Если вы отправитесь в Github, а затем отправитесь на одну из своих репозиториев, вы увидите вкладку, которая называется проектами. Оттуда вы можете выбрать новый проект, настроить данные вашего проекта и создать новый шаблон проекта.
Если вы теперь выберите вкладку «Проблемы», которая находится по вершине и выберите «Новая проблема», вы сможете создать новую проблему. Затем вы можете применить различные этикетки - это такие вещи, как ошибка, улучшение, вопрос и дубликат. Вы также можете использовать улучшение для новой функции или запроса. Затем вы можете назначить различные члены команды на задачу, веха, а также проект, который вы только что создали.
Присвоенные члены будут иметь список всех своих задач, и вы даже можете использовать плату проекта, чтобы отслеживать, что в настоящее время создается в настоящее время. Если вы помните наше предыдущее учебное пособие, мы говорили о перемещении билетов в Sprint Backlog и Vavilation. Таким образом, GitHub работает очень хорошо, как инструмент All-in-One для надзора за проектом.
Эта статья была первоначально опубликована в выпуске 311 сеть Самый продаваемый журнал мира для веб-дизайнеров и разработчиков. Купить выпуск 311 здесь или же Подписаться здесь Отказ
Статьи по Теме:
Страница 1 из 2: Как нарисовать лошадь: шаг за шагом ..
Средняя скорость современного интернет-соединения будет звучать очен..
Affinity Designer - популярный векторный редактор инструмента. А также версии M..
Все чаще, дизайнеры и разработчики подтверждают важность дизайна движ..
Несколько счастливых разработчиков, и этот автор имел возможность Tech E..
При разработке простых веб-проектов, которые включают взаимодействие ..
Лидер семинара вершин Глен Юга Разделяет свои лу..
Автопортрет является одним из самых вознаграждений, которые могут поп..