如何在没有合并文件的情况下推送到git

时间:2018-04-29 08:33:57

标签: git

当我将我的rails应用程序推送到git时,我有这个

To github.com:name/name.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:name/name.git'
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.

然后在git pull之后添加一些我之前删除但不想要它们的旧文件和照片..

当我运行git merge时,我的文件被删除,包括资产的照片,我不想要这个 请帮我, 我是Git的新手,我无法处理它。

1 个答案:

答案 0 :(得分:2)

首先将您的工作添加并提交到本地存储库。

git add .
git commit -a -m "Some comment"

然后获取上游更新

git fetch

然后将您的工作重新置于远程HEAD之上。

git rebase

这比在90%的场景中合并更好,并为您提供更清晰的git历史记录。

如果没有其他人在你推动之前做出任何改变,你的推动现在就会成功。

git push

有关重新定位的详细信息,请参阅:https://git-scm.com/book/en/v2/Git-Branching-Rebasing

上面的文章很好地完成了以下

  

一般来说,充分利用这两个世界的方法是重新定义你所做的本地更改,但是在推送它们之前还没有共享以便清理你的故事,但是从不改变任何你推到某处的东西