gitlab:合并历史记录在合并请求后可用

时间:2018-11-09 16:31:04

标签: git version-control gitlab

我分叉了一个项目,并在几次提交期间对其进行了一些更改。我想知道是否提交合并请求,维护者可以使用所有提交的历史记录吗?

我正在寻找一个解决方案,所有提交都汇总为一个提交,并且我不知道合并请求期间是否确实发生了?这是因为我做过一些试错操作,我不希望项目维护人员可以看到这些试错操作。

2 个答案:

答案 0 :(得分:1)

是的,无论您推动什么,它都将是整个历史。有些人喜欢在压缩提交之前。我看到很多人为此使用git rebase -igit merge --squash。我喜欢用这种方式手工做...说要压缩的是10次提交:

git reset --soft HEAD~10
git commit -m "blah blah"

Voila!在那里,您的提交被压缩了。

答案 1 :(得分:1)

是的,如果您按下分支,则所有历史记录都将存在。您可以

#1在推送分支之前压扁所有提交:参见Git: How to squash all commits on branch如何做到

#2压缩合并中的所有提交:较新版本的gitlab具有一项功能,如果您合并到master,则在实际合并之前将自动压缩所有提交: Gitlab Squash

有关更多信息,请参见https://docs.gitlab.com/ee/user/project/merge_requests/squash_and_merge.html

我个人在Gitlab可以自动合并之前已经完成了#1的工作。现在我一直在做#2。如果您不希望将所有提交的历史记录提供给maintaner,则应该执行#1。否则,#2会很好地工作,并且最终结果将是相同的:一次提交即可进行更改。