Добавление строк кода, добавленных из более старой ветви, в новейшую версию

У меня есть более старая версия репо (renderdoc) (v 0.27), которая была изменена Стефаном Ритчером. Однако в нем есть много ошибок, которые были исправлены оригинальным автором Baldurk в последней версии на 0.33. Вопрос в том, как я могу получить исправления или изменения из v 0.27 и добавить их в v 0.33 или, если проще, как получить исправления ошибок из v 0.33 и добавить их в ветку Стефана?

mona@DESKTOP-37GGNHL MINGW64 /d/experiment/renderdoc ((c67e3e7b...))
$ git log
commit c67e3e7b7a221780ff904c516e9861826939e511
Author: Stephan Richter <stephan.richter@gris.tu-darmstadt.de>
Date:   Sun Nov 27 17:47:15 2016 -0800

    updated submodule repository

commit 7fff78c1a341e15e143a6007837414265cf124ee
Author: Stephan Richter <stephan.richter@visinf.tu-darmstadt.de>
Date:   Thu Nov 24 11:30:38 2016 +0100

    don't close renderdoc automatically

commit 5b60cf6507ca179bb7891adc33b7702994c7aae8
Author: Stephan Richter <stephan.richter@visinf.tu-darmstadt.de>
Date:   Wed Sep 7 15:47:03 2016 +0200

    Added ID rendering mode for extracting mesh, texture, and shader IDs from G-                                                                                                                                                                                               buffer pass. Added option to load and execute script right after log file is loa                                                                                                                                                                                               ded. Replaced tinyexr with OpenEXR for dumping textures.

commit eb3e74db38c29c2c7d74745ff7c85383d310f389
Author: baldurk <baldurk@baldurk.org>
Date:   Wed Jan 20 20:19:53 2016 +0100
:...skipping...
commit c67e3e7b7a221780ff904c516e9861826939e511
Author: Stephan Richter <stephan.richter@gris.tu-darmstadt.de>
Date:   Sun Nov 27 17:47:15 2016 -0800

    updated submodule repository

commit 7fff78c1a341e15e143a6007837414265cf124ee
Author: Stephan Richter <stephan.richter@visinf.tu-darmstadt.de>
Date:   Thu Nov 24 11:30:38 2016 +0100

    don't close renderdoc automatically

commit 5b60cf6507ca179bb7891adc33b7702994c7aae8
Author: Stephan Richter <stephan.richter@visinf.tu-darmstadt.de>
Date:   Wed Sep 7 15:47:03 2016 +0200

    Added ID rendering mode for extracting mesh, texture, and shader IDs from G-                                                                                                                                                                                               buffer pass. Added option to load and execute script right after log file is loa                                                                                                                                                                                               ded. Replaced tinyexr with OpenEXR for dumping textures.

commit eb3e74db38c29c2c7d74745ff7c85383d310f389

Кроме того, как я могу выбрать все исправления Stephan в интерактивном режиме?

mona@DESKTOP-37GGNHL MINGW64 /d/experiment/renderdoc ((c67e3e7b...))
$ git reflog
c67e3e7b HEAD@{0}: checkout: moving from playing_for_data to c67e3e7b7a221780ff904c516e9861826939e511
c67e3e7b HEAD@{1}: clone: from https://bitbucket.org/visinf/projects-2016-playing-for-data-renderdoc

а также

mona@DESKTOP-37GGNHL MINGW64 /d/experiment/renderdoc ((c67e3e7b...))
$ git branch
* (HEAD detached at c67e3e7b)
  playing_for_data

а также

mona@DESKTOP-37GGNHL MINGW64 /d/experiment/renderdoc ((c67e3e7b...))
$ git status
HEAD detached at c67e3e7b
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   pdblocate/pdblocate.vcxproj
        modified:   renderdoc/3rdparty/breakpad/client/windows/common.vcxproj
        modified:   renderdoc/3rdparty/breakpad/client/windows/crash_generation/crash_generation_client.vcxproj
        modified:   renderdoc/3rdparty/breakpad/client/windows/crash_generation/crash_generation_server.vcxproj
        modified:   renderdoc/3rdparty/breakpad/client/windows/handler/exception_handler.vcxproj
        modified:   renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj
        modified:   renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj
        modified:   renderdoc/driver/gl/renderdoc_gl.vcxproj
        modified:   renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj
        modified:   renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj
        modified:   renderdoc/renderdoc.vcxproj
        modified:   renderdoccmd/renderdoccmd.vcxproj
        modified:   renderdocshim/renderdocshim.vcxproj
        modified:   renderdocui/ironpython/compilelibs.sh

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        renderdoc.VC.VC.opendb
        renderdoc.VC.db
        renderdocui/ironpython/pythonlibs.zip

no changes added to commit (use "git add" and/or "git commit -a")

также:

mona@DESKTOP-37GGNHL MINGW64 /d/latest_renderdoc/renderdoc (master)
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean

и некоторые вещи из последней версии git log:

$ git log
commit 1ba4a8ad1efbc1ee6ac13649a59adb8420910a3e
Author: baldurk <baldurk@baldurk.org>
Date:   Thu Feb 23 23:53:24 2017 +0000

    Reapply fix 16f85cadc which was wrongly removed by 5a1ded738

commit a029fc4ab1d6f24aba969d28b81d66f01931766f
Author: Baldur Karlsson <baldurk@baldurk.org>
Date:   Thu Feb 23 17:46:42 2017 +0000

    Update screenshots to point to renderdoc.org site

commit 73ba1c140a4e02b147f4398cc3cd1fed6ecaa738
Author: Janos Pantos <jp.uszeged@partner.samsung.com>
Date:   Thu Feb 23 18:21:34 2017 +0100

    Fix eglCreateWindowSurface function name at dlsym call.

commit 898e95496531b8cc10f8ddb513d362d15e3e0e68
Author: baldurk <baldurk@baldurk.org>
Date:   Thu Feb 23 17:38:09 2017 +0000

    Bump version info to v0.34
:...skipping...
commit 1ba4a8ad1efbc1ee6ac13649a59adb8420910a3e
Author: baldurk <baldurk@baldurk.org>
Date:   Thu Feb 23 23:53:24 2017 +0000

    Reapply fix 16f85cadc which was wrongly removed by 5a1ded738

commit a029fc4ab1d6f24aba969d28b81d66f01931766f
Author: Baldur Karlsson <baldurk@baldurk.org>
Date:   Thu Feb 23 17:46:42 2017 +0000

    Update screenshots to point to renderdoc.org site

1 ответ

Для более старой версии v0.27 в /d/experiment/renderdocВы можете добавить его в качестве удаленного в v0.33 /d/latest_renderdoc/renderdoc, И тогда вы можете перебазировать изменения с v0.27 до v0.33. детализируйте шаги как ниже:

git remote add old /d/experiment/renderdoc
git fetch old
git rebase --onto master <commit id on v0.27 before start to rebase) <commit if on v0.27 of the end to rebase>
git checkout -b temp
git checkout master
git merge temp

Например, если вы хотите отменить коммиты от 7fff78c1a341e15e143a6007837414265cf124ee в c67e3e7b7a221780ff904c516e9861826939e511 для мастер-ветки v0.33, вы должны использовать git rebase --onto master 5b60cf6 c67e3e7,

Поскольку коммиты, которые вы перебазируете на мастер, не существуют в вашем источнике, и после того, как вы перебазируете эти коммиты на мастер, они не переходят в точку. Таким образом, вам нужно создать ветку для указания коммита после того, как вы закончите перебазирование, а затем перемотать основную ветвь для перемотки вперед, чтобы указать ее (как последние 3 команды выше).

Другие вопросы по тегам