Держите общий репозиторий для 2 пультов на развивающемся проекте - PullRequest
0 голосов
/ 21 мая 2019

Мы запускаем проект, который берет наш текущий sitecore 8.2 и обновляет его до 9.0.1.

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

У меня возникают проблемы с выяснением того, как управлять нашим исходным кодом с помощью git, тем более что мы переходим с локальных серверов на Azure и сталкиваемся с проблемами развертывания, которые в конечном итоге будут решены.

Наш план состоит в том, чтобы иметь 2 репозитория git, один для наших локальных серверов (Repo A) и один для нашего проекта миграции (Repo B).В идеале я мог бы перенести наши изменения с Репо А на Репо Б, но у меня много проблем / вопросов:

  • Как я могу продвинуть разработку и изменения, сделанные на Репо А, к Репо Б, учитываяони больше не будут совместно использовать одного и того же предка / код, особенно после того, как были сделаны первые изменения?

До сих пор я пытался внести небольшие изменения в небольшой проект, расположенный в репозитории (a) иподтолкнуть их к другому репо (б), но каждый раз я получаю следующую ошибку:

hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Я имею в виду, я получаю ошибку, но я не хочу тянуть удаленную ветку (б), яЯ просто хочу поместить мой код в ветку в удаленном б, чтобы мы могли объединить его с нашим новым кодом в обновляемом проекте.Когда проект будет завершен, мы откажемся от репо A, но изменения по-прежнему будут продолжаться в репо B, поэтому потеря должна быть нулевой, однако у меня возникают проблемы с выяснением этой части.

Ответы [ 2 ]

1 голос
/ 21 мая 2019

Если вы хотите разделить ветви между двумя репозиториями (если это вообще возможно , а не из технического POV, это технически возможно), то вы можете сделать это, имея один локальный репо с двумя установленными пультамивверх.Скажем, repo1 и repo2.Скажем, есть ветка repo1 / blah, которую вы хотите перенести в repo2:

git checkout -b blah # create local branch blah from repo1/blah
git push repo2 blah

Итак, вы скопировали бла из repo1 в repo2.И тогда вы можете работать как обычно, имея отдельные ветки на отдельных репозиториях (делиться своими предками), и вы можете объединять, продвигать и развлекаться, как обычно.

1 голос
/ 21 мая 2019

Рассмотрите клонирование / разветвление Repo A как Repo B, а затем время от времени делайте слияния из A в B?Используя для этого пульты git remote add, он должен выглядеть так: git merge repoA/master repoB/master, где repoA указывает на ваш локальный git, а repoB на ваш Azure git.

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