Найти фиксацию родительского модуля при переходе к предыдущей фиксации в подмодуле, а скобка в родительском модуле не была создана - PullRequest
1 голос
/ 29 мая 2020

Если вы работаете в иерархии репо из 3-х модульных репозиториев. Это основное репо и 2 иерархии подмодулей.

MainRepo
    Submodule1
        Submodule2

Вы успешно работаете в своей ветке, которую вы создаете в submodule1, давайте назовем ее sbm1Branch, и команда обновляет проект в MainRepo. Внезапно вы поняли, что не создали ветвь в родительском репо, поэтому вы втягиваете основное репо и создаете свою ветку оттуда (потому что вы пользуетесь возможностью объединить ветку групп разработчиков в свою, чтобы обновить и разрешить конфликты. ). Затем вы понимаете, что вам нужно go вернуть некоторые коммиты, чтобы проверить что-то в этом конкретном статусе проекта c фиксации. ¿Как узнать родительский коммит MainRepo, в котором вы должны находиться для коммита вашей ветки sbm1Branch, в которую вам нужно временно go вернуться ?? (это может быть необходимо для устранения ошибок компиляции, потому что в MainRepo теперь вы обновлены, поэтому многие коммиты впереди от «параллельной» фиксации sbm1Branch, в которой вы были, когда вы нажали эту фиксацию, но ветка в родительском репо с ветвью в родительском модуле еще не было сделано).

Если это невозможно, предположите, что хорошая практика состоит в том, чтобы всегда соответствующие ветки обновляли указатели до родительского модуля, потому что, если это не будет сделано, даже вы можете go вернуть некоторые коммиты в ветке подмодуля, возможно, вы не сможете получить статус всего проекта для этой конкретной c фиксации, к которой вы можете захотеть go вернуться, потому что вы не знаете эквивалентную фиксацию родительского модуля.

Надеюсь, я понял. Спасибо

РЕДАКТИРОВАТЬ: Есть своего рода обходной путь. Если ранее выполнялись слияния ветки, в которой работает ваша команда, назовем ее develop, в моем случае вы можете проверить последнюю фиксацию, в которой вы недавно слили develop в свою рабочую ветку sbm1Branch. Предположительно, вы должны были вытащить из родительского репозитория и обновить весь статус проекта во всех репозиториях, так что вернувшись в этот коммит, все будет в порядке. Теперь вопрос в том, есть ли более изощренный способ найти эту фиксацию для этого конкретного сценария.

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