一个新文件,git要求合并,为什么?

时间:2018-04-06 10:25:04

标签: git merge debian fast-forward

在家里我添加了do_next.py并成功将其推送到存储库。在工作中我创建了cat.py,进行了提交并尝试了push失败:

hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

如果我pull,git会要求我合并(输入合并评论)。

请解释为何需要合并?我认为,因为我刚刚添加了一个新文件,fast-forward就足够了,不需要合并。

此外,我无法为这个必要的提交想出一个明智的信息。 使用: git版本2.1.4 Debian Jessie

2 个答案:

答案 0 :(得分:3)

git要求合并的原因是git pull是两个命令git fetchgit merge的组合。由于您的本地分支具有不在远程分支上的提交,并且远程分支具有不在您的本地分支上的提交。你是“前后”。如果您不想进行合并,请执行git pull --rebase将您的本地提交设置为一边,更新本地分支,然后重新应用您的提交。因为你只是添加一个新文件才能顺利运行。

答案 1 :(得分:0)

在git中,提交是指整个存储库的状态。你有一个包含文件“do_next.py”的提交,以及一个包含文件“cat.py”的提交。现在应该有一个包含这两个文件的提交,所以它只是建议创建它。