有时候，我们在使用git pull指令想把一个远程分支拉取到本地分支的时候，老是会拉取失败，这一般是因为某种原因，本地分支和远程分支的内容差异无法被git成功识别出来，所以git pull指令什么都不会拉取下来或拉取失败。下面这个帖子的方法可以解决这个问题，强制拉取一个远程分支的所有内容来覆盖本地分支。
The scenario is following:
- A team member is modifying the templates for a website we are working on
- They are adding some images to the images directory (but forgets to add them under source control)
- They are sending the images by mail, later, to me
- I'm adding the images under the source control and pushing them to GitHub together with other changes
- They cannot pull updates from GitHub because Git doesn't want to overwrite their files.
This is the error I'm getting:
error: Untracked working tree file 'public/images/icon.gif' would be overwritten by merge
How do I force Git to overwrite them? The person is a designer - usually I resolve all the conflicts by hand, so the server has the most recent version that they just needs to update on their computer.
git reset --hard HEAD git pull
It should do what you want.