При изменении расположения файла можно в той же фиксации обновить содержимое файла или присвоить ему новое имя.
Перемещение файла в новое расположение в GitHub Enterprise Server
Совет.
- Если вы попытаетесь переместить файл в репозиторий, к которому у вас нет доступа, мы создадим вилку проекта к вашей личной учетной записи и поможем отправить запрос на вытягивание в исходный репозиторий после того, как вы зафиксируете внесенное изменение.
- Некоторые файлы, например образы, требуют перемещения из командной строки. Дополнительные сведения см. в разделе Перемещение файла в новое расположение.
- Если в репозитории есть защищенные ветви, вы не можете изменять или отправлять файлы в таких ветвях с помощью GitHub. Дополнительные сведения см. в разделе Сведения о защищенных ветвях.
Вы можете использовать GitHub Desktop, чтобы перенести изменения в новую ветвь и зафиксировать их. Дополнительные сведения см. в разделе Фиксация и просмотр изменений в проекте в GitHub Desktop.
-
В репозитории перейдите к файлу, который вы хотите переместить.
-
В правом верхнем углу представления файлов щелкните , чтобы открыть редактор файлов.
-
В поле имя файла измените имя файла, используя следующие рекомендации:
- Чтобы переместить файл во вложенную папку, введите имя нужной папки, а затем
/
. Имя новой папки станет новым элементом на панели навигации. - Чтобы переместить файл в каталог над текущим расположением файла, поместите курсор в начало поля имени файла, а затем введите
../
, чтобы перейти на один полный уровень каталога вверх, или введите ключbackspace
, чтобы изменить имя родительской папки.
- Чтобы переместить файл во вложенную папку, введите имя нужной папки, а затем
-
В поле "Сообщение о фиксации" введите короткое осмысленное сообщение о фиксации, описывающее изменения, внесенные в файл. В таком сообщении фиксацию можно отнести к нескольким авторам. Дополнительные сведения см. в разделе Создание фиксации с несколькими авторами. 1. Под полями сообщения о фиксации укажите, куда следует добавить фиксацию: в текущую ветвь или в новую. Если текущей ветвью является ветвь по умолчанию, нужно создать новую ветвь для фиксации, а затем создать запрос на вытягивание. Дополнительные сведения см. в разделе Создание запроса на включение изменений.
1. Нажмите кнопку Зафиксировать изменения или Предложить изменения.
Перемещение файла в новое расположение с помощью командной строки
Для перемещения файлов по репозиторию с помощью командной строки нужно удалить файл из старого расположения и добавить в новое.
Многие файлы можно перемещать непосредственно в GitHub Enterprise Server, но для некоторых файлов, таких как образы, необходимо использовать командную строку.
В этой процедуре предполагается, что вы уже сделали следующее:
- создали репозиторий на GitHub Enterprise Server или получили доступ к репозиторию, который принадлежит другому пользователю и в который вы хотите внести свой вклад;
- клонировали репозиторий на локальном компьютере.
- На компьютере переместите файл в новое расположение в каталоге, созданном на локальном компьютере при клонировании репозитория.
- Откройте ТерминалТерминалGIT Bash.
- Для проверки старых и новых расположений файлов используйте
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") - Подготовьте файл для фиксации в локальном репозитории. Это действие приведет к удалению (команда
git rm
) файла из старого расположения и его добавлению (командаgit add
) в новое.$ git add . # Adds the file to your local repository and stages it for commit. # Чтобы отменить подготовку файла, используйте команду "git reset HEAD ВАШ-ФАЙЛ".
- Для проверки изменений, подготовленных для фиксации, используйте
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 - Зафиксируйте подготовленный файл в локальном репозитории.
$ 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", а затем выполните фиксацию и добавьте файл еще раз.
- Отправьте изменения в локальном репозитории в экземпляр GitHub Enterprise Server.
$ git push origin YOUR_BRANCH # Pushes the changes in your local repository up to the remote repository you specified as the origin