正如标题所说,我并不清楚a git merge --squash和a 之间的区别git merge --no-commit.
据我所知的帮助页面git merge,这两个命令都会让我进入一个更新的工作树,在那里它仍然可以编辑然后进行最后的提交(或多次提交).
有人可以澄清这两个选项的差异吗?我什么时候使用一个而不是另一个?
ral*_*nja 76
git merge --no-commit
Run Code Online (Sandbox Code Playgroud)
这与普通合并类似,但不会创建合并提交.此提交将是合并提交:当您查看历史记录时,您的提交将显示为正常合并.
git merge --squash
Run Code Online (Sandbox Code Playgroud)
这会将更改合并到您的工作树中,而不会创建合并提交.当您提交合并的更改时,它将看起来像您的分支上的新"正常"提交:在历史记录中没有合并提交.这几乎就像你对所有合并的变化做了一个挑选.
| 归档时间: |
|
| 查看次数: |
35656 次 |
| 最近记录: |