Visual Studio 2017 Незамеченные изменения исчезают после слияния из основной ветви в ветку выпуска - PullRequest
0 голосов
/ 30 января 2020

Мне нужно объединить выбранные изменения из ветви 'Master' в ветку 'EnvT'.

Во время слияния (Master to EnvT) скажем, что в ветке «Master» было сделано около 15 изменений, все 15 изменений являются поэтапными и доступны в «поэтапных изменениях», но из этих 15 изменения я хочу объединить только 2 изменения. Поэтому я щелкаю правой кнопкой мыши по 13 изменениям и «отменяю» изменения. После разрешения конфликтов слияния я объединяю 2 изменения из ветки Master в ветку 'EnvT'. Я фиксирую изменения и принимаю изменения в источнике 'EnvT'. Все хорошо до сих пор.

Проблема в том, что в следующий раз, когда я выполняю слияние из ветви «Master» в ветку «EnvT», 13 изменений, которые я «Unstaged» в предыдущей операции слияния, не отображаются под «Поэтапные изменения» ». Что бы я ни делал, эти изменения не возвращаются при следующем слиянии от Мастера к EnvT.

Было бы замечательно, если бы кто-то пролил свет на происходящее. Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 31 января 2020

Я не смог найти решение Visual Studio. Это решение основано на Git Bash.

$ git diff --name-status EnvT..master | w c (получить общее количество разниц между ветвью EnvT и главной ветвью)

$ git checkout EnvT (это целевая ветвь, которая будет получать обновление из ветки 'master')

$ git мастер извлечения "C: / filefullpath / SQL / file1. sql" (укажите полный путь к файлу). Обновлен 1 путь из 18b47878

$ git status

В EnvT ветви. Изменения, которые должны быть зафиксированы: (используйте «git restore --staged ...» для удаления), изменено: /SQL/file1.sql

$ git commit -m 'Обновлен файл спецификаций c в локальную ветвь из главной ветки' $ git diff --name-status EnvT..master | w c (наконец, получите количество изменений, должно быть меньше различий).

После фиксации изменений я снова открыл ветку в Visual Studio 2017 и попытался выполнить слияние из Master в EnvT, я видел только изменения которые не были объединены. Слияние файлов, выполненное с использованием Git Bash, не отображается в наборе изменений во время слияния Visual Studio. Миссия выполнена!

Эти статьи были очень полезны:

https://jasonrudolph.com/blog/2009/02/25/git-tip-how-to-merge-specific-files-from-another-branch/

Как объединить указанные c файлы из Git ветви .

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