2015-03-03 3 views
2

Так что я занимался Git немного за последние несколько дней, и я думаю, что понял концепцию .. ожидаю чего-то: как вы могли бы справиться с главной веткой как живой версия без влияния других ветвей?Git master branch как реальная версия понимания

Я работаю с удаленным хранилищем, и я имею 2 ветви: мастер и развития.
Теперь я пробовал вчера и отредактировал индексный файл с манекеном Lorem ipsum текст на
Вы сейчас на dev. филиал! И переключение между этими ветвями показало мне либо текст через его веб-адрес.

Теперь я пытаюсь понять, как я мог бы работать на этой ветке без, влияющих на живую версию. Как будто я пытаюсь работать над новой функцией и не хочу, чтобы что-то незавершенное или багги отображалось вживую. Я не уверен, как это сделать, но если у вас будет 2 сервера?
например. Адрес: и . Dev.example.com. Итак, создаем репозиторий в первом, а затем потянем его во второй и работаем там до тех пор, пока функция не будет готова к работе через git push?

EDIT: Изображение для моей проблемы мышления

enter image description here

+0

Если у вас есть оба текста в одном файле на обеих ветках, вы где-то совершили ошибку. Филиалы полностью изолированы друг от друга. Чтобы повлиять на другую ветку, вы должны сделать это с помощью 'git cherry-pick',' git merge' или что-то в этом роде. Или я ошибаюсь? – Jan

ответ

2

Вам понадобятся две отдельные копии репозитория Git на сервере для того, чтобы иметь возможность сохранить живую версию видимой master на master.domain.com и версия develop на develop.domain.com.

Настройка виртуальных хостов на сервере, чтобы указать субдомены в соответствующие места, где существуют отдельные хранилища Git. Например. master.domain.com Корень документа составляет /usr/www/domain.com/master, а корень документа develop.domain.com - /usr/www/domain.com/develop. В этом случае внутри каждого каталога есть копия того же репозитория Git (с разными выделенными ветвями) (../domain.com/master и ../domain.com/develop).

Каталог master постоянно в git checkout master и каталог develop постоянно находится в git checkout develop (или в зависимости от того развития отрасли вы хотите использовать).

Существует несколько различных серверных программ (Apache, Nginx и т. Д.), И каждый из них имеет разные способы создания виртуальных хостов, поэтому я не буду описывать здесь точные методы.