我为我的开发设置了一个简单的 GIT 环境。一个是从远程主机克隆的主机,另一个是分支(也存在于远程主机上)。我通常在分支上工作,然后当我想要推送我的更改时,我会执行通常的 Git 命令序列,例如:
- git pull (确保一切都是最新的)
- 混帐添加
- git commit -m "消息"
- git 推送
当我执行 ' git push ' 时,我收到一条消息:
d96001d..d1cf61c branch_release -> branch_release
[rejected] master -> master (non-fast-forward)
error: failed to push some refs to '____________'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. If you did not intend to push that branch, you may want to
hint: specify branches to push or set the 'push.default' configuration variable
hint: to 'simple', 'current' or 'upstream' to push only the current branch.
为了解决这个问题,我像这样切换分支
git checkout master.
这会在我的 Master 中引入大量文件,这些文件以前缀“M”表示它们已被修改。然后我做
git checkout branch_release
并且它似乎也将同一组文件带入了我的主人,我认为这不应该发生,因为我之前在这个分支上做了 GIT 拉动。
我的问题是,这是设计使我还需要在推送其中一个分支之前更新 master 吗?如果没有,我是如何设置错误的,我应该怎么做才能确保我只需要更新 GIT 分支。