мы недавно переключились с SVN на Git и в то же время перевели наши действующие системы в систему управления версиями (вместо локальной проверки и копирования файлов в живую).
В проекте, который мне назначен, мы все имеем доступ к одному и тому же репозиторию, и чтобы внести изменения в живую жизнь, мы просто git pull
туда. Это вызывает проблемы, потому что наши веб-дизайнеры вносят изменения в VCS, которые еще не должны быть активными, но должны быть в среде веб-тестирования.
Когда один из разработчиков начинает работать, он получает все (возможно, незавершенные) изменения.
Я думал о том, чтобы переключиться вживую на дополнительную ветку и просто объединить то, что изменилось, но из-за недостатка знаний о git я понятия не имею, как.
Моя идея такова:
- Создайте новую ветку в прямом эфире (
git branch live
). - Каждый раз, когда что-то должно жить
- Извлечение изменений в мастере (например:
git checkout master; git pull; git checkout live
) git merge master
- Извлечение изменений в мастере (например:
Проблема в том, что переключение на мастер или перетаскивание всего непосредственно в работающую систему может вызвать проблемы, поэтому я бы предпочел этого избежать.
Есть ли способ сделать это или есть лучший способ управлять системой Live (кроме обучения веб-игроков, чтобы они не толкали незаконченные вещи).