如何使用覆盖更改进行git拉取
我很难用git覆盖远程回购的更改如何使用覆盖更改进行git拉取,git,version-control,Git,Version Control,我很难用git覆盖远程回购的更改 我在master上,git状态show1修改文件 现在我想使用git pull,这样所有当前的修改都会被来自master的pull覆盖 我试过这个 git pull-x其继承人 然后在最后一个错误中,我发现xxxx文件有一些修改。把它们交出来或藏起来。然后它将退出并退出abort 我不得不隐藏更改,然后再次git-pull使其工作 我如何在不隐藏的情况下做到这一点呢?您遇到的情况是,git merge(由git pull调用)只对提交有效,而对未提交的更改无效。
git状态
show1修改文件git pull-x其继承人
然后在最后一个错误中,我发现xxxx文件有一些修改。把它们交出来或藏起来。然后它将退出并退出abort
我不得不隐藏更改,然后再次git-pull
使其工作
我如何在不隐藏的情况下做到这一点呢?您遇到的情况是,
git merge
(由git pull
调用)只对提交有效,而对未提交的更改无效。要保留未提交的更改,请先提交或隐藏它。您基本上有三个选择:
git add modified-file.txt; git commit
git checkout the-modified-file.txt
git reset --hard HEAD (will throw away uncommitted changes)
git clean -f -d
git pull
如果您有未跟踪的文件和目录,则clean是可选的
git reset --hard HEAD && git clean -f -d && git pull (in one cmd)
类似的建议应该附带一个警告,即
git reset--hard
命令将丢弃未提交的更改。和git clean
将丢弃git未跟踪的文件。为此,将添加警告,但这是问题的要求如果您想丢弃所有未提交的更改,您可以只执行git stash
SparrowG-git stash不会丢弃未提交的更改。
git reset --hard HEAD && git clean -f -d && git pull (in one cmd)