提交 a0946a562a8e 的 Cherry Pick 失败

Cherry pick failed for commit a0946a562a8e

我正在尝试测试作为拉取请求排队的更改。拉取请求在 GitHub 上,位于 here。我的脚本是:

export P11KIT_DIR=p11-kit-master

rm -rf "$P11KIT_DIR" 2>/dev/null

if ! git clone --depth=3 https://github.com/p11-glue/p11-kit.git "$P11KIT_DIR";
then
    echo "Failed to checkout p11-kit"
    exit 1
fi

cd "$P11KIT_DIR"

if ! git cherry-pick a0946a562a8e;
then
    echo "Failed to patch p11-kit"
    exit 1
fi

脚本因错误而终止:

fatal: bad revision 'a0946a562a8e'
Failed to patch p11-kit

a0946a562a8e 显然是修订号。我是直接从GitHub拿来的。我猜 cherry-pick 是错误的命令。

如何将 a0946a562a8e 添加到 master 中?

  • 您在错误的存储库中查找提交

  • --depth 意味着 --single-branch,所以如果它是正确的存储库,你仍然不会得到正确的分支

GitHub provides refs for pull requests,但是,您可以这样做,替换 cherry-pick 步骤:

if ! git fetch origin pull/252/head;
then
    echo "Failed to fetch pull request"
    exit 1
fi

if ! git merge FETCH_HEAD;
then
    echo "Failed to patch p11-kit"
    exit 1
fi