此版本的 GitHub Enterprise 已停止服务 2021-09-23. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

将文件移至新位置

You can move a file to a different directory on GitHub Enterprise Server or by using the command line.

除了更改文件位置之外,您也可以在同一提交中更新文件内容提供新名称

Moving a file to a new location on GitHub Enterprise Server

提示

  • 如果尝试在您没有访问权限的仓库中移动文件,我们会将项目复刻到您的用户帐户,并在您提交更改后帮助您发送拉取请求到原仓库。
  • 有些文件(如图像)需要您从命令行移动它们。 更多信息请参阅“使用命令行将文件移至新位置”。
  • 如果仓库中有任何受保护分支,则无法使用 GitHub 编辑或上传受保护分支中的文件。 更多信息请参阅“关于受保护分支”。

您可以使用 GitHub Desktop 将您的更改转移到新的分支,然后提交它们。 更多信息请参阅“提交和审查对项目的更改”。

  1. 在仓库中浏览到您要移动的文件。
  2. 在文件视图的右上角,单击 打开文件编辑器。 编辑文件图标
  3. 在文件名字段中,按照以下原则更改文件名称: 编辑文件名
    • 要将文件移入子文件夹,请输入所需文件夹的名称,后接 /。 新文件夹名称将变成导航层次结构中的新项目。
    • 要将文件移入文件当前位置上方的目录,请将光标放在文件名字段的开头,然后输入 ../ 以上跳一个完整的目录层级,或者输入 backspace 键以编辑父文件夹的名称。
  4. 在页面底部,输入一条简短、有意义的提交消息,描述您对文件所作的更改。 您可以在提交消息中将提交归于多个作者。 更多信息请参阅“创建有多个合作作者的提交”。 有关更改的提交消息
  5. 在提交消息字段下面,确定是要将提交添加到当前分支还是新分支。 如果当前分支是默认分支,则应选择为提交创建新分支,然后创建拉取请求。 更多信息请参阅“创建新的拉取请求”。 提交分支选项
  6. 单击 Propose file change(提议文件更改)提议文件更改按钮

使用命令行将文件移到新位置

您可以使用命令行在仓库中移动文件,从旧位置删除文件,然后将其添加到新位置。

许多文件可在 GitHub Enterprise Server 上直接移动,但有些文件(如图像)需要从命令行移动。

此过程假设您已经:

  1. 在计算机上,将文件移至克隆仓库时在计算机上本地创建的目录中的新位置。
  2. 打开 Terminal(终端)Terminal(终端)Git Bash
  3. 使用 git status 检查新旧文件位置。
    $ git status
    > # On branch your-branch
    > # Changes not staged for commit:
    > #   (use "git add/rm ..." to update what will be committed)
    > #   (use "git checkout -- ..." to discard changes in working directory)
    > #
    > #     deleted:    /old-folder/image.png
    > #
    > # Untracked files:
    > #   (use "git add ..." to include in what will be committed)
    > #
    > #     /new-folder/image.png
    > #
    > # no changes added to commit (use "git add" and/or "git commit -a")
  4. 将要提交的文件暂存到本地仓库。 这将从旧位置删除或 git rm 文件,并且添加或 git add 文件到新位置。
    $ git add .
    # Adds the file to your local repository and stages it for commit.
    # 要取消暂存文件,请使用 'git reset HEAD YOUR-FILE'。
  5. 使用 git status 检查为提交暂存的更改。
    $ git status
    > # On branch your-branch
    > # Changes to be committed:
    > #   (use "git reset HEAD ..." to unstage)
    > #
    > #    renamed:    /old-folder/image.png -> /new-folder/image.png
    # Displays the changes staged for commit
  6. 提交暂存在本地仓库中的文件。
    $ git commit -m "Move file to new directory"
    # Commits the tracked changes and prepares them to be pushed to a remote repository.
    # 要删除此提交并修改文件,请使用 'git reset --soft HEAD~1' 并再次提交和添加文件。
  7. 推送更改(本地仓库中)到 您的 GitHub Enterprise Server 实例。
    $ git push origin your-branch
    # 将本地仓库中的更改推送到指定为源的远程仓库