# 重命名文件

您可以直接在 GitHub 中或使用命令行重命名存储库中的任何文件。

## 在  上重命名文件

你还可以在重命名文件时[将文件移动到新位置](/zh/repositories/working-with-files/managing-files/moving-a-file-to-a-new-location)。

> \[!TIP]
>
> * 如果你试图在没有访问权限的库中重命名文件，我们会将该项目复制到你的个人账户，并在你提交更改后帮助你向原始库发送[拉取请求](/zh/pull-requests/reference/pull-requests)。
> * 通过 Web 界面创建的文件名只能包含字母数字字符和连字符 (`-`)。 要使用其他字符，请在本地创建和提交文件，然后将它们推送到仓库。
> * 有些文件（如图像）需要您从命令行重命名它们。 有关详细信息，请参阅[使用命令行重命名文件](#renaming-a-file-using-the-command-line)。

1. 在仓库中浏览到您要重命名的文件。
2. 在文件视图的右上角，单击 <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-pencil" aria-label="Edit file" role="img"><path d="M11.013 1.427a1.75 1.75 0 0 1 2.474 0l1.086 1.086a1.75 1.75 0 0 1 0 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 0 1-.927-.928l.929-3.25c.081-.286.235-.547.445-.758l8.61-8.61Zm.176 4.823L9.75 4.81l-6.286 6.287a.253.253 0 0 0-.064.108l-.558 1.953 1.953-.558a.253.253 0 0 0 .108-.064Zm1.238-3.763a.25.25 0 0 0-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 0 0 0-.354Z"></path></svg> 以打开文件编辑器。
   ![文件的屏幕截图。 在标头中，标有铅笔图标的按钮以深橙色标出。](/assets/images/help/repository/edit-file-edit-button.png)
3. 在文件名字段中，将文件名称更改为所需的新文件名。 您还可以同时更新文件的内容。

![显示存储库文件在 Web 浏览器中打开以供编辑的屏幕截图。 文件名字段处于活动状态，并突出显示了深橙色轮廓。](/assets/images/help/repository/changing-file-name.png)

1. 单击“提交更改...”

2. 在“提交消息”字段中，输入简短、有意义的提交消息，以描述对文件的更改。 您可以在提交消息中将提交归于多个作者。 有关详细信息，请参阅“[创建包含多个作者的提交或代表某个组织创建提交](/zh/pull-requests/how-tos/commit-changes/creating-a-commit-with-multiple-authors)”。

3. 在提交消息字段下面，确定是要将提交添加到当前分支还是新分支。 如果当前分支是默认分支，则应选择为提交创建新分支，然后创建拉取请求。 有关详细信息，请参阅“[创建拉取请求](/zh/pull-requests/how-tos/create-pull-requests/creating-a-pull-request)”。

   ![GitHub 拉取请求的屏幕截图，其中显示了一个单选按钮，用于直接提交到主分支或创建新分支。 已选择“新建分支”。](/assets/images/help/repository/choose-commit-branch.png)

4. 单击“提交更改”或“建议更改” 。

## 使用命令行重命名文件

您可以使用命令行重命名仓库中的任何文件。

许多文件可以直接重命名 GitHub，但某些文件（如图像）要求从命令行重命名它们。

此过程假设您已经：

* [在 GitHub](/zh/repositories/creating-and-managing-repositories/creating-a-new-repository) 上创建一个仓库，或者有一个你要参与的由其他人所拥有的现有仓库
* [在计算机上本地克隆存储库](/zh/repositories/creating-and-managing-repositories/cloning-a-repository)

1. 打开<span class="platform-mac">终端</span><span class="platform-linux">终端</span><span class="platform-windows">Git Bash</span>。

2. 将当前工作目录更改为您的本地仓库。

3. 重命名文件，指定旧文件名和要为文件提供的新名称。 这将暂存您的提交更改。

   ```shell
   git mv OLD-FILENAME NEW-FILENAME
   ```

4. 使用 `git status` 检查旧文件名和新文件名。

   ```shell
   $ git status
   > # On branch YOUR-BRANCH
   > # Changes to be committed:
   > #   (use "git reset HEAD <file>..." to unstage)
   > #
   > #     renamed: OLD-FILENAME -> NEW-FILENAME
   > #
   ```

5. 提交暂存在本地仓库中的文件。

   ```shell
   $ git commit -m "Rename file"
   # Commits the tracked changes and prepares them to be pushed to a remote repository.
   # 要删除此提交并修改文件，请使用 'git reset --soft HEAD~1' 并再次提交和添加文件。
   ```

6. 将本地存储库中的[更改推送](/zh/get-started/using-git/pushing-commits-to-a-remote-repository)到 GitHub.com。

   ```shell
   $ git push origin YOUR_BRANCH
   # Pushes the changes in your local repository up to the remote repository you specified as the origin
   ```