如何拉取remote master更新本地分支,仅保留单个文件不更新?
保留指定文件并拉取远程master更新的操作步骤
方法一:暂存文件后拉取
- 先把要保留的文件暂存,防止拉取时被覆盖:
git stash push -- <你的文件名> - 拉取远程master的最新变更到当前本地分支:
git pull origin master - 恢复暂存的文件到工作区:
由于你提到该文件和当前分支最新版本一致,恢复后不会有冲突,直接就能覆盖拉取下来的版本。git stash pop
方法二:拉取后重置指定文件
- 先正常拉取远程master的变更:
git pull origin master - 把指定文件重置回拉取前的状态(也就是本地分支原来的版本):
这两条命令会丢弃拉取后该文件的所有变更,恢复成你想要保留的版本。git reset HEAD -- <你的文件名> git checkout -- <你的文件名>
额外说明
- 因为这个文件不是配置文件,且和当前分支最新版本一致,没必要用
.gitignore这类持久化忽略的方式,上面两种临时处理方法足够用。 - 如果之后还要多次做相同操作,可以考虑写个简单脚本,但单次操作的话选上面任意一种方法都高效。
内容的提问来源于stack exchange,提问作者Rebel
相关产品推荐
相关产品推荐

