将--ff-only设置为git pull的默认选项,但不是git merge的默认选项

9
我在与同事共同开发项目时,遇到了一些问题:当我们提交的历史记录有所区别,进行git pull合并时,如果只有单个提交差异,则会出现不必要的复杂情况。因此,我希望在无法使用快进(fast-forward)模式的情况下,git pull会失败,这样开发人员就可以查看提交并确定是应该进行合并还是变基(rebase)操作。
我的问题是:是否有一种方法可以默认设置--ff-only,使所有git pull命令在任何分支上都执行快进模式(fast-forward),但不适用于git merge?我知道可以使用别名(aliases),但那不是我想要的。

非快进提交是如何生成的?如果您的同事将非快进更新推送到远程,则工作流程存在问题。 - Christopher
如果你在多人之间共享代码时频繁推送,这种情况就不可避免。我认为这不是工作流问题。 - Kevin Schmidt
2个回答

1

别名可以做你需要的事情,但我同意Christopher的观点,你不应该在第一时间就处理这个问题。

Git使分支易于管理,因此如果您想在合并之前与其他人共享一些代码,请推送到一个分支。


0
我认为您应该将配置文件基于分支进行设置,因为配置文件有各个部分。您可以组织在合并的情况下执行此操作,在变基的情况下执行此操作,因为您必须事先决定您的策略。
您可以查看这个question,了解如何设置分支配置。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接