From: development-bounces+ext-sami.1.rosendahl=nokia....@qt-project.org [development-bounces+ext-sami.1.rosendahl=nokia....@qt-project.org] on behalf of Rosendahl Sami.1 (EXT-Reaktor/Helsinki) Sent: Tuesday, January 17, 2012 10:35 AM To: [email protected] Subject: [Development] Instructions how to set up cherry-picking between Qt5 and Qt4 repositories?
Hi I am backporting fixes I have pushed to Qt5 to Qt4.8 now that 4.8 is available in gerrit. I got comments to my Qt4.8 patches that I should preferably cherry-pick the Qt5 commits to Qt4. I do not know how to set up my environment to enable the cherry-picking because of the separate Qt5 and Qt4.x repositories and their different directory structures. I found the tool qtrepotools/bin/git-qt-cherry-pick in Qt5 repository, but have not been able to figure out how to use it or how to set up the repositories to enable its use. Lacking the cherry-picking capability I have moved commits between Qt5 and 4.x using git format-patch & apply and have edited the paths in the patches to match the target repo. Any help or instructions for setting up cherry-picking would be much appreciated. Regards, Sami R ________________________________ (Apologies for possibly weird message formatting, using a webmail client) Was able to figure something out: - git-qt-cherry-pick seems to prefer that the Qt4.x and Qt5 repository directories are siblings in the same directory and the Qt5 path (looking from the Qt4.x repository path) is ../qt5 - The <repo> in the script usage means the base name of a Qt5 subrepository (e.g. 'qtbase') Alas, the script still fails: $ ../qt5/qtrepotools/bin/git-qt-cherry-pick -l qtbase b851c764a61c0de781ef3447230a0a6a3f4a0ed9 Porting from qt5/qtbase to qt Other path is ../qt5/qtbase Applying: Fix stack overwrite in QDBusDemarshaller fatal: sha1 information is lacking or useless (tests/auto/dbus/qdbusmarshall/tst_qdbusmarshall.cpp). Repository lacks necessary blobs to fall back on 3-way merge. Cannot fall back to three-way merge. Patch failed at 0001 Fix stack overwrite in QDBusDemarshaller When you have resolved this problem run "git am --resolved". If you would prefer to skip this patch, instead run "git am --skip". To restore the original branch and stop patching run "git am --abort". Aborting at b851c764a61c0de781ef3447230a0a6a3f4a0ed9 $ I am assuming that the message "Repository lacks necessary blobs to fall back on 3-way merge." may be related to the note "it's strongly recommended to have linked object stores between the repositories to enable 3-way merges." in this announcement about qt-cherry-pick I was able to find: http://lists.qt-project.org/pipermail/development/2011-November/000483.html. I don't know how to set up "linked object stores between the repositories". I did set up the Git Grafts as instructed in the Qt5 README, but that did not help with the git-qt-cherry-pick. Sami R
_______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
