【发布时间】:2013-08-30 02:59:28
【问题描述】:
我在 GitHub 上设置了一个带有 Dev 分支的存储库,我使用以下命令将其克隆到本地计算机:
git clone https://github....
然后我使用以下命令切换到我的开发分支:
git checkout -b Dev
然后我拉动只是为了确保所有内容都是最新的
git pull origin Dev
我现在在我的 Dev 分支中,编写一些代码并使用以下命令添加文件:
git add filename
然后我使用:
git commit -m "message"
然后我使用:
git push origin Dev
这一切都很好。然后第二个用户出现并输入一些代码。同时我正在处理一个单独的文件,但我们正在处理同一个分支。我像以前一样添加和提交。但是,当我尝试推送时,我收到以下信息:
致
https://github.com/ex/ex.git! [拒绝]
Dev -> Dev(首先获取)错误:未能推送一些 参考“https://github.com/ex/ex.git”提示:更新 被拒绝,因为遥控器包含您提示的工作:不是 在当地有。这通常是由另一个存储库推送引起的 提示:相同的参考。您可能需要先合并远程更改 (例如,提示:'git pull')在再次推动之前。提示:见'注 'git push --help' 中关于快进'的详细信息。
我按照它说的去做:
git pull origin Dev
然后我可以像以前一样推动,一切似乎都很好。但是,当我检查提交历史时,回到 GitHub,我看到了:
Merge branch 'Dev' of https://github.com/ex/ex into Dev
在我刚刚添加的提交中。为什么会发生这种合并?我怎样才能阻止这种情况发生?
【问题讨论】:
-
git pull基本上是git fetch; git merge
标签: git github git-merge git-push git-pull