![]() |
1
1096
简短的回答合并,然后您可以简单地使用
示例:
而
Amber's answer
也适用于快进案件,使用
长话短说如果分支B会导致非快进合并,则不能在未签出第一个分支a的情况下将其合并到分支a中。这是因为需要一个工作副本来解决任何潜在的冲突。
然而,
在快进合并的情况下,这是可能的
此用例非常常见,您可能希望在git配置文件中为其创建一个别名,如下所示:
此别名的作用如下:
的语法
|
![]() |
2
86
不,没有。目标分支的签出是必要的,以允许您解决冲突等(如果Git无法自动合并它们)。
但是,如果合并是一个快速前进的分支,您不需要签出目标分支,因为您实际上不需要合并任何东西—您所要做的就是更新分支以指向新的head ref。您可以使用
这个
|
![]() |
3
31
正如Amber所说,快速前进的合并是唯一一种你可以想象得到的情况。任何其他的合并都需要经历整个三方合并,应用补丁,解决冲突,这意味着需要有文件在身边。
我身边正好有一个脚本,我就是这么用的:在不接触工作树的情况下进行快进合并(除非你正在合并到HEAD中)。它有点长,因为它至少有点健壮—它检查以确保合并是快进的,然后在不签出分支的情况下执行合并,但产生与以前相同的结果—您看到
另外,如果有人看到这个脚本有任何问题,请发表评论!这是一份写了就忘的工作,但我很乐意改进它。 |
![]() |
4
20
只有在合并是快进的情况下才能这样做。如果没有,那么git需要签出这些文件,这样才能合并它们! 去做吧 只是为了快速前进 :
拜托,拜托,
拜托
不要对不是快进的对象执行此操作,否则您只会将您的分支重置为另一个提交(检查一下
|
![]() |
5
14
在你的情况下,你可以使用
这就是你想要的(假设合并是快速进行的)。如果分支由于需要非快进合并而无法更新,则此操作会安全地失败,并显示一条消息。 这种形式的fetch还有一些更有用的选项:
请注意
安全地使我的本地主人更新,即使我目前有一些其他分支机构检查了。不需要网络访问。 |
![]() |
6
11
另一种,公认的非常残忍的方法是重新创建分支:
这会丢弃本地过时的分支,并重新创建一个同名分支,因此请小心使用。。。 |
![]() |
7
7
您可以克隆回购并在新回购中进行合并。在同一个文件系统上,这将硬链接而不是复制大部分数据。最后将结果拉入原始回购。 |
![]() |
8
4
输入 :
https://github.com/schuyler1d/git-forward-merge 仅适用于自动合并,如果存在冲突,则需要使用常规合并。 |
![]() |
9
4
然后键入
|
![]() |
10
4
问题很简单,答案也应该很简单。OP要求的只是合并上游
热释光;博士:
完整答案:
这个
因为你已经和
但是请注意,如果pull-to-include中有任何合并,您应该更愿意合并
记住当地的
|
![]() |
11
3
没有解决保留branchA的本地副本的需要,但是可以通过在签出branchB之前添加一个步骤来轻松地进行修改。 有点像。。。
对于简单的快进合并,将跳转到提交消息提示符。
要设置,请添加到
|
![]() |
12
2
另一种有效的方法是:
因为它是小写的
我的需求与OP略有不同,后者是创建一个新的特性分支
|
![]() |
13
2
通过这种方式,您可以在同一个git repo中跟踪两个独立的分支,这样您只需获取一次就可以在两个工作树中获取更新(而不必两次git克隆和每次git拉取) Worktree将为您的代码创建一个新的工作目录,您可以在其中同时签出不同的分支,而不是就地交换分支。 当你想移除它时,你可以用
|
![]() |
14
2
GitFlow 用户最有用的命令是:
|
![]() |
15
1
只是为了不检查我使用的主机就拔出主机
|
![]() |
16
1
您现在已经将本地工作分支合并到本地工作分支
|
![]() |
17
1
如果你想保持同一棵树作为你想要合并的分支之一(即不是真正的“合并”),你可以这样做。
|
|
18
0
|
![]() |
Harry · 如何在编译时获取克隆的git仓库的标签 5 月前 |
![]() |
Ooker · 如何从blob中删除秘密? 5 月前 |
![]() |
hasdrubal · git日志图智能分支过滤器 5 月前 |
![]() |
J. Doe · 为什么git中没有跟踪git文件? 6 月前 |