ми нещодавно перейшли з SVN на Git і в той же час поставили наші живі системи в контроль версій (замість локальної каси та копії файлів наживо).
У проекті, якому я призначений, ми всі отримуємо доступ до одного сховища і щоб отримати зміни в прямому ефірі, ми просто git pull
там. Це спричиняє проблеми, тому що наші веб-дизайнери підштовхують зміни до системи VCS, яка не повинна бути в прямому ефірі, але повинна бути в середовищі веб-тестування.
Коли хтось із розробників зараз запускає живий, він отримує всі (можливо, незавершені) зміни.
Я думав перейти наживо до додаткової гілки і просто злити те, що змінилося, але через мою відсутність знань git я не знаю як.
Моя ідея:
- Створіть нову гілку в режимі live (
git branch live
). - Кожен раз, коли щось має жити
- Потягніть зміни в майстер (наприклад
git checkout master; git pull; git checkout live
:) git merge master
- Потягніть зміни в майстер (наприклад
Проблема полягає в тому, що перехід на головне або перетягування всього безпосередньо в живу систему спричинить проблеми, тому я вважаю за краще цього уникати.
Чи є спосіб це зробити чи є кращий спосіб керувати системою Live (за винятком тренувань веб-сайтів, щоб не натискати незавершені речі).
git checkout -f
для ігнорування проблеми - але робіть резервну копію!
git pull --all
за замовчуванням не буде тягнути master в live, він витягне master і злить його з master, і (якщо він існує на сервері) потягне live, щоб об'єднатися в live. Ви пробували?