没有自动提交的git合并

是否有可能做一个“混帐合并”,但没有提交?没有自动提交的git合并

“人混帐合并”这样说:

With --no-commit perform the merge but pretend the merge failed and do not autocommit, 

to give the user a chance to inspect and further tweak the merge result before

committing.

但是,当我尝试使用git与合并仍然--no提交它的自动提交。下面是我所做的:

$> ~/git/testrepo$ git checkout master 

Switched to branch 'master'

$> ~/git/testrepo$ git branch

* master

v1.0

$> ~/git/testrepo$ git merge --no-commit v1.0

Updating c0c9fd2..18fa02c

Fast-forward

file1 | 1 +

1 files changed, 1 insertions(+), 0 deletions(-)

$> ~/git/testrepo$ git status

# On branch master

# Your branch is ahead of 'origin/master' by 1 commit.

#

nothing to commit (working directory clean)

随后的“混帐日志”显示所有从1.0分支提交合并成高手。

回答:

注意,在做合并的输出 - 跟它Fast Forward

在这种情况下,你想做的事:

git merge v1.0 --no-commit --no-ff 

回答:

您误解了合并的含义,--no-commit会阻止MERGE COMMIT的发生,并且只会在合并两个发散分支历史记录时发生;在你的例子中,情况并非如此,因为git表明它是一个“快进”合并,然后git只按顺序应用已经存在于分支上的提交。

回答:

如果你只想要一个承诺仿佛要提交所有更改自己输入,--squash会做太多

$ git merge --squash v1.0 

$ git commit

回答:

我更喜欢这种方式,所以我不需要记住任何罕见的参数。

git merge branch_name 

然后,它会说你的分支是领先对手#承诺,你现在可以弹出这些承诺关闭并投入工作的变化有以下:

git reset @~# 

例如,如果合并后它是1提前使用,使用:

git reset @~1 

以上是 没有自动提交的git合并 的全部内容, 来源链接: utcz.com/qa/265091.html

回到顶部