没有自动提交的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