标签: git-cherry-pick

如何结束Git Cherry-Pick?

昨天我挑选了两个提交到我的主分支,其中一个引起了合并冲突,我解决了它们,承诺并将它们推向原点.今天我收到以下错误时试图从服务器拉出来:

$ git pull
fatal: You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).
Please, commit your changes before you can merge.
$
Run Code Online (Sandbox Code Playgroud)

Git状态如下:

$ git status
# On branch main
# Your branch is behind 'origin/main' by 2 commits, and can be fast-forwarded.
#
$
Run Code Online (Sandbox Code Playgroud)

我试过以下无济于事:

$ git cherry-pick --continue
usage: git cherry-pick [options] <commit-ish>
$
Run Code Online (Sandbox Code Playgroud)

关于如何解决这个问题的任何想法?提前致谢!

git version-control cherry-pick git-cherry-pick

43
推荐指数
4
解决办法
3万
查看次数

Git Cherry-Pick和Conflicts

有两种不同的git分支.在一个开发进入(Branch1).

在其他分支中,一些PoC工作正在进行(Branch2).现在,我想挑选从Branch1到Branch2的更改,以便Branch2是最新的.

现在,在挑选了4或5个变化后,我发现了一些合并冲突,我无法继续进行更多挑选.

在进行下一次樱桃挑选之前,我需要解决所有冲突吗?或者我能否以某种方式推迟解决冲突,直到我挑选所有的变化(并一起解决所有冲突)?

此外,是否建议在这种情况下进行樱桃挑选或分支合并?

git cherry-pick git-cherry-pick

41
推荐指数
3
解决办法
8万
查看次数

强迫git接受cherry-pick的变化

我从我的分支机构的gerrit评论中选择了樱桃.在gerrit代码审查中,我有两个补丁集和我之前挑选过的补丁,所以现在我想做第二个补丁集,但是有冲突,我怎么能强制git接受所有的更改?谢谢!

git git-cherry-pick

38
推荐指数
3
解决办法
2万
查看次数

如何在Git中的分支之间移动提交?

我确信这是一个很简单的问题并得到了回答,但我不知道要搜索的条款.我有这个:

    /--master--X--Y
A--B
    \--C--D--E
Run Code Online (Sandbox Code Playgroud)

我在一个分支上提交C,D和E(仅限本地),但后来我意识到D和E实际上是独立于C.我想将C移动到它自己的分支,并保留D和E以供日后使用.也就是说,我想要这个:

                   /--C
    /--master--X--Y
A--B
    \--D--E
Run Code Online (Sandbox Code Playgroud)

我怎样从D和E下面抽出C?

git git-branch git-cherry-pick

37
推荐指数
1
解决办法
1万
查看次数

git merge --no-commit vs git cherry-pick --no-commit

有什么区别git merge --no-commitgit cherry-pick --no-commit

如果我遵循这两个命令后,历史上有什么不同吗?

git git-merge git-cherry-pick

34
推荐指数
2
解决办法
2万
查看次数

为什么git-cherrypick没有说什么

我搜索了很多以下问题,但无法获得任何实质性信息...请帮助我,创建一个临时分支202116,我正在尝试做一个gerrit 202116的樱桃,我收到以下消息,为什么我不是能够挑选这种微粒,为什么我会收到这个错误?请提供您的意见

<>git fetch ssh://company@company.com:29418/platform/vendor/company-proprietary/radio refs/changes/25/202116/1 && git cherry-pick FETCH_HEAD
From ssh://company.com:29418/platform/vendor/company-proprietary/radio
 * branch            refs/changes/25/206025/1 -> FETCH_HEAD
# On branch 202116
# You are currently cherry-picking.
#   (all conflicts fixed: run "git commit")
#
nothing to commit, working directory clean
The previous cherry-pick is now empty, possibly due to conflict resolution.
If you wish to commit it anyway, use:

    git commit --allow-empty
Run Code Online (Sandbox Code Playgroud)

git github gerrit git-cherry-pick

31
推荐指数
1
解决办法
3万
查看次数

提示:解决冲突后,标记更正的路径

git有时会在冲突中给出这个消息(在恢复或樱桃选择期间)

hint: after resolving the conflicts, mark the corrected paths
Run Code Online (Sandbox Code Playgroud)

这是什么意思?

git git-merge git-revert git-cherry-pick git-merge-conflict

30
推荐指数
2
解决办法
3万
查看次数

多次提交樱桃采摘

我在主分支中有33个提交被网格化.现在我需要整齐地保持记录.所以现在我已经创建了功能分支,我试图在不同的功能分支中对这33个提交进行分类.那么可以一次选择多个提交来复制相关的功能分支吗?当我尝试使用cherry-pick命令进行多次提交时,我也面临着冲突.

git cherry-pick A B C
Run Code Online (Sandbox Code Playgroud)

这里A,B,C是提交的哈希码.

git git-cherry-pick

28
推荐指数
2
解决办法
3万
查看次数

在Git樱桃挑选或rebase合并冲突中,BASE(又名"祖先"),LOCAL和REMOTE如何确定?

在正常的Git合并冲突中,三向合并的三个版本的文件大致如下:

  • LOCAL:我的分支机构的版本
  • REMOTE:来自其他分支的版本
  • BASE:来自两个分支的共同祖先的版本(特别是我的分支的HEAD的共同祖先和另一个分支的HEAD)

当一个Git樱桃挑选产生合并冲突时,没有共同的祖先,正确地说,那么这些东西是如何确定的?关于rebase也可以这样说.

git cherry-pick git-cherry-pick

27
推荐指数
1
解决办法
6022
查看次数

如何git cherrypick在特定分支中引入的所有更改

背景资料:

由于现有系统的工作流程受到限制,我们需要建立一个有点非正统的git过程.

(patch)    A-B---F
             |   |
(hotfix)     C-D-E
                 |
(dev)      1-2-3-G
Run Code Online (Sandbox Code Playgroud)

在补丁分支上,有一些提交.这里的文件与dev上的文件类似但不完全相同(同步脚本按照许多文件中的设置顺序切换,使它们在功能上相同时显示为已更改).

此分支需要修复,以便创建并处理修补程序分支.然后,这个分支合并回补丁,到目前为止,非常好.

需要将相同的修补程序部署到dev分支,以使其与修补程序保持相对同步,但尝试合并修补程序分支会导致git尝试合并来自A和B的所有不相关和"未更改"的文件,而不是只有C,D和E.

题:

看起来,cherry-pick做了我们想要的只是从选择的提交中获得更改,但我真的想要一种方法来同时挑选给定分支中的所有提交,而不必每次都查找提交ID .

git merge git-cherry-pick

23
推荐指数
4
解决办法
2万
查看次数