相关疑难解决方法(0)

为什么git默认执行快进合并?

来自mercurial,我使用分支来组织功能.当然,我也想在我的历史中看到这种工作流程.

我使用git开始了我的新项目并完成了我的第一个功能.合并该功能时,我意识到git使用快进,即如果可能,它会将我的更改直接应用到主分支并忘记我的分支.

因此,思考未来:我是唯一一个从事这个项目的人.如果我使用git的默认方法(快进合并),我的历史将导致一个巨大的主分支.没有人知道我为每个功能使用了一个单独的分支,因为最后我只有那个巨大的主分支.这看起来不专业吗?

通过这种推理,我不想要快进合并,也不知道为什么它是默认的.这有什么好处的?

git git-merge fast-forward git-branch

637
推荐指数
2
解决办法
15万
查看次数

如何使git merge的默认值为--no-ff --no-commit?

公司策略是--no-ff用于合并提交.我个人喜欢调整合并日志消息,所以我使用--no-commit.另外,我想在提交之前进行实际的编译和测试.

如何为所有分支制作--no-ff--no-commit默认?

(而且我在问这个以后的几年里学到了,我几乎总是对提交感到满意,因此默认情况下允许它提交更简单,只要我修改或以其他方式解决问题,然后再进行推送都好...)

git merge

67
推荐指数
4
解决办法
2万
查看次数

Git:所有分支的默认"无提交"合并行为?

我希望"git merge"默认不提交(即,我希望默认情况下为"--no-commit"行为),而不管目标分支如何.

我知道特定分支的"git config branch.master.mergeoptions",我知道默认情况下在所有分支上禁用快进的"git config merge.noff no".

以下所有实验均不适合我.他们应该吗?

  • git config branch.mergeoptions --no-commit
  • git config branch.*.mergeoptions --no-commit
  • git config merge.com没有

似乎无法通过谷歌搜索找到答案.

git git-merge git-config

6
推荐指数
1
解决办法
717
查看次数

为什么拉动有时会让我创建一个提交?

我正在与同一分支的某人一起工作。

在我添加或提交或推送之前,我每次都在对我的工作目录进行更改之后拉动,只有有时我会收到以下消息。它什么时候这样做,为什么?

请输入提交消息以解释为什么需要进行此合并,尤其是将更新的上游合并到主题分支时。

以“#”开头的行将被忽略,空消息会中止提交。

git

6
推荐指数
1
解决办法
4612
查看次数

在可能的情况下自动解决 git 冲突

我们有一个包含 50 多个项目的 .NET 解决方案文件,我们经常遇到这样的情况:两个人将进行相对较小的更改(例如更新 Nuget 包或重命名文件),这会影响所有 50项目文件。

这意味着任何时候合并这些分支时,所有 50 个文件都会发生冲突 - 但是如果您在任何合并工具中打开它们,它将能够自动解决它们。这意味着我在合并中没有实际工作要做,但我必须单击每个文件,等待它在 Beyond Compare 中打开,然后单击保存,然后单击关闭。单击下一个文件,单击保存,单击关闭...重复 55 次。

我的问题是:有什么方法可以让 Git 在遇到冲突文件时尝试使用合并工具自动解决它们?

更新:希望这会增加一些清晰度:我必须一个一个解决每个冲突,但是由于我的合并工具可以自动解决每个冲突,是否有某种批处理操作或合并命令的选项,我可以称呼?

git merge merge-conflict-resolution

5
推荐指数
1
解决办法
2572
查看次数

默认情况下Git合并没有快进

可能重复:
我可以在git中默认关闭快进吗?

是否有任何方法可以全局使git默认不进行快进合并?当我完成一个功能并将我的功能分支合并回主线时,我一直忘记添加--no-ff.

git merge

3
推荐指数
1
解决办法
2754
查看次数

如何在 IntelliJ IDEA 中设置“--no-ff”选项自动启用?

每次合并时,我都必须手动设置此选项。

图片

有没有机会只为项目设置一次这个标志?

我已经设定我的命令行使用配置的偏好--no-ff(如描述在这里),但它并没有影响IDEA的横竖UI

git intellij-idea fast-forward

3
推荐指数
1
解决办法
1285
查看次数

如何在TortoiseGit中添加选项'git merge --no-ff'

找不到很长一段时间如何在TortoiseGit中添加此选项

`git merge`和`git merge --no-ff`有什么区别?

任何人都可以解释我如何设置它?

git tortoisegit

1
推荐指数
1
解决办法
1032
查看次数