Git(GitLab)-合并失败-尝试“的指令”;签出、审阅、本地合并”;
我试图将我的用户分支合并到共享的“开发”分支。我是唯一一个在这个项目上工作的人。GitLab给了我以下指示,我正在努力解决这些指示 在步骤1中,当我执行“git获取源代码”时,我在存储库中执行了该操作,我已经在硬盘上执行了该操作。是这样吗?如果我在某个新创建的目录中尝试它,它会显示为“致命:不是git存储库(或任何父目录):.git 对于步骤1的第二部分- 我得到一个错误: 致命:分支名称“nw-ob210refactor”已存在 因此,我尝试在末尾添加一个2,我得到了以下错误: 致命:“origin/nw-ob210refactor 2”不是提交和分支“nw-ob210refactor” 无法从中创建Git(GitLab)-合并失败-尝试“的指令”;签出、审阅、本地合并”;,git,gitlab,merge-conflict-resolution,Git,Gitlab,Merge Conflict Resolution,我试图将我的用户分支合并到共享的“开发”分支。我是唯一一个在这个项目上工作的人。GitLab给了我以下指示,我正在努力解决这些指示 在步骤1中,当我执行“git获取源代码”时,我在存储库中执行了该操作,我已经在硬盘上执行了该操作。是这样吗?如果我在某个新创建的目录中尝试它,它会显示为“致命:不是git存储库(或任何父目录):.git 对于步骤1的第二部分- 我得到一个错误: 致命:分支名称“nw-ob210refactor”已存在 因此,我尝试在末尾添加一个2,我得到了以下错误: 致命:“or
GitLab的上述说明是否完整正确;或者我是否做了一些明显错误的事情。您的
git fetch origin
是正确的。这从一个名为origin
的远程站点获取了最新的引用。现在,当您尝试签出时,很可能已经有了该名称的分支(它甚至可能与远程服务器上的提交相同)
为了确保这一点,您应该在切换到分支后拉动
git checkout nw-ob210refactor
git pull
然后继续执行步骤2
注意您可以创建引用此远程分支的第二个分支,但我认为没有必要。如果您想知道如何让“添加2”方案生效,您必须将其添加到本地分支名称,而不是远程分支名称:
git checkout -b nw-ob210refactor2 origin/nw-ob210refactor
您的git fetch origin
是正确的。这会从名为origin
的远程设备获取最新的引用。现在,当您尝试签出时,很可能已经有了该名称的分支(甚至可能与远程设备上的分支处于同一提交状态)
为了确保这一点,您应该在切换到分支后拉动
git checkout nw-ob210refactor
git pull
然后继续执行步骤2
注意您可以创建引用此远程分支的第二个分支,但我认为没有必要。如果您想知道如何让“添加2”方案生效,您必须将其添加到本地分支名称,而不是远程分支名称:
git checkout -b nw-ob210refactor2 origin/nw-ob210refactor
创建一个新的本地分支。请参见mangit checkout
-b“新分行”
创建分支“new_branch”并在“start_point”启动它;如果它已经存在,则将其重置为“start_point”。这相当于使用“-f”运行“git branch”;有关详细信息,请参阅git branch(1)
如果你已经有了相应的本地分支,你当然不想再创建它了。相反,只使用
git checkout nw-ob210refactor
及
git pull
如果我在某个新创建的目录中尝试
在那里,你必须做一次新的尝试
git clone https://your/repository
首先下载您的存储库
因此,我尝试在末尾添加一个2,但出现了以下错误:致命错误:“origin/nw-ob210refactor2”不是提交,无法从中创建分支“nw-ob210refactor”
如果要创建新的本地分支,则必须更改-b
(=本地brnach名称)之后的参数,而不是您尝试下载的源(远程分支名称):
git checkout -b checkout nw-ob210refactor2 origin/checkout nw-ob210refactor
更新
一旦您的已经是最新的
继续执行步骤3
你也在那里吗
git checkout -b develop origin/develop
如果develope
分支到目前为止不存在本地分支。否则再次仅使用
git checkout develop
只切换到它。在这种情况下,请确保再次运行
git pull
现在您有了本地分支和最新分支,可以合并了
git merge --no-ff nw-ob210refactor
这将nw-ob210refactor
合并到develope
。如果需要,只需切换到目标分支(checkout
)并交换名称即可
--无ff
读取无快进
并表示
即使合并解析为快进,也要创建合并提交。这是合并未存储在refs/tags/hierarchy中其自然位置的带注释(可能还有签名)标记时的默认行为
或者简单地说,您希望创建一个特殊的提交,该提交将消息从分支nw-ob210refactor合并到develope
,即使没有冲突,您实际上可以在不进行额外提交的情况下合并分支。这对于更好地了解历史记录和ma中合并的内容非常有用如果需要,可以更轻松地在以后还原内容
合并后,向后推合并到的相应分支。在本例中,它是develope
so do
git push origin develop
创建一个新的本地分支。请参见mangit checkout
-b“新分行”
创建分支“new_branch”并在“start_point”启动它;如果它已经存在,则将其重置为“start_point”。这相当于使用“-f”运行“git branch”;有关详细信息,请参阅git branch(1)
如果你已经有了相应的本地分支,你当然不想再创建它了。相反,只使用
git checkout nw-ob210refactor
及
git pull
如果我在某个新创建的目录中尝试
在那里,你必须做一次新的尝试
git clone https://your/repository
首先下载您的存储库
因此,我尝试在末尾添加一个2,但出现了以下错误:致命错误:“origin/nw-ob210refactor2”不是提交,无法从中创建分支“nw-ob210refactor”
如果要创建新的本地分支,则必须更改-b
(=本地brnach名称)之后的参数,而不是您尝试下载的源(远程分支名称):
git checkout -b checkout nw-ob210refactor2 origin/checkout nw-ob210refactor
更新
一旦您的已经是最新的
继续执行步骤3
你也在那里吗
git checkout -b develop origin/develop
如果develope
分支到目前为止不存在本地分支。否则再次仅使用
git checkout develop
只切换到它。在这种情况下,请确保再次运行
git pull
现在您有了本地分支和最新分支,可以合并了
git merge --no-ff nw-ob210refactor