0

在家里,我添加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

4

2 回答 2

3

git 要求合并的原因是因为git pull是两个命令的组合,git fetch并且git merge. 由于您的本地分支有一个不在远程分支上的提交,而远程分支有一个不在您本地的提交。你“领先又落后”。如果您不想进行合并,那么这样做git pull --rebase会将您的本地提交放在一边,更新您的本地分支,然后重新应用您的提交。由于您只添加一个新文件,因此可以顺利运行。

于 2018-04-06T12:48:48.407 回答
0

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

于 2018-04-06T12:58:54.233 回答