# Git: 覆盖本地修改

!!! warning "注意!"

    本文介绍的命令将使你放弃所有本地更改,而使用远程分支中的副本重置/覆盖所有内容。

输入以下命令来覆盖本地文件:

``` sh
git fetch --all
git reset --hard <remote>/<branch_name>
```

例如:

``` sh
git fetch --all
git reset --hard origin/main
```
!!! info

    不论是否使用 --hard 选项,所有尚未推送的本地提交都将丢失。

## 命令详解

`git fetch` 从远程下载最新版本,不会尝试合并或重新设置任何内容。

然后 `git reset` 将 main 分支重置为你刚获取的分支。--hard 选项更改工作树中的所有文件,以匹配 origin/main 中的文件。