У меня есть ветвь B, которая была проверена в другом репо, затем были сделаны некоторые изменения и после переустановки они были нажаты с помощью --force (это было исправление до последнего фиксации). Теперь, если я вытащил измененную ветвь в первое репо, я получаю конфликты слияния.вытащить после того, как результаты банализации были объединены в конфликты
Команды я бег (с нерелевантными изменениями, которые упрощают фактический выход) следующим образом:
# First checkout the original B
$ pwd
/home/user/dir1
$ git checkout B
Switched to branch 'B'
Your branch is up-to-date with 'origin/B'.
# Now clone the same repo into another directory and checkout B there
$ cd .. && git clone git clone ssh://[email protected]/myrepo.git dir2 && cd dir2
$ git checkout B
Switched to branch 'B'
Your branch is up-to-date with 'origin/B'.
# Now edit some file, commit it and "merge" the changes
# to the originally last commit as a fixup
$ nano file.txt
$ git commit -a -m "Fixup to file.txt"
$ git rebase -i HEAD~2
... the last commit is "fixup'ed" to the last commit in the original branch (the commit before "Fixup to the file.txt" commit
# Push the B with rewritten history to the upstream
$ git push --force origin B
# Get back to the original repo and pull the changes
$ cd ../dir1
$ git pull origin B
...
CONFLICT (content): Merge conflict in .../file.txt
...
Единственное различие между двумя копиями филиала находится в «верхние» совершить. Можно ли сообщить git, что я хочу заменить последнее коммит в первом репо тем, что у меня есть в восходящем потоке, без git-pull, пытаясь заглянуть внутрь для изменений в соответствующих файлах?
Вы можете перефразировать вопрос и использовать имена для филиалов, пультов дистанционного управления и важных фиксаций? –