Как переименовать файл в github
Перейти к содержимому

Как переименовать файл в github

  • автор:

Переименование файла

Любой файл в репозитории можно переименовать непосредственно в GitHub или с помощью командной строки.

Platform navigation

Renaming a file on GitHub

Renaming a file also gives you the opportunity to move the file to a new location

Tips:

  • If you try to rename a file in a repository that you don’t have access to, we will fork the project to your personal account and help you send a pull request to the original repository after you commit your change.
  • File names created via the web interface can only contain alphanumeric characters and hyphens ( — ). To use other characters, create and commit the files locally and then push them to the repository.
  • Some files, such as images, require that you rename them from the command line. For more information, see «Renaming a file.»
  1. In your repository, browse to the file you want to rename.
  2. In the upper right corner of the file view, click

Screenshot of a file. In the header, a button, labeled with a pencil icon, is outlined in dark orange.

to open the file editor.

Screenshot showing a repository file open for editing in the web browser. The file name field is active and highlighted with a dark orange outline.

In the filename field, change the name of the file to the new filename you want. You can also update the contents of your file at the same time.

Screenshot of a GitHub pull request showing a radio button to commit directly to the main branch or to create a new branch. New branch is selected.

  • Click Commit changes.
  • In the «Commit message» field, type a short, meaningful commit message that describes the change you made to the file. You can attribute the commit to more than one author in the commit message. For more information, see «Creating a commit with multiple authors.»
  • Below the commit message fields, decide whether to add your commit to the current branch or to a new branch. If your current branch is the default branch, you should choose to create a new branch for your commit and then create a pull request. For more information, see «Creating a pull request.»

    Renaming a file using the command line

    You can use the command line to rename any file in your repository.

    Many files can be renamed directly on GitHub, but some files, such as images, require that you rename them from the command line.

    This procedure assumes you’ve already:

    • Created a repository on GitHub, or have an existing repository owned by someone else you’d like to contribute to
    • Cloned the repository locally on your computer
    git mv OLD-FILENAME NEW-FILENAME 
    $ git status > # On branch YOUR-BRANCH > # Changes to be committed: > # (use "git reset HEAD . " to unstage) > # > # renamed: OLD-FILENAME -> NEW-FILENAME > # 
    $ git commit -m "Rename file" # Commits the tracked changes and prepares them to be pushed to a remote repository. # To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again. 
    $ git push origin YOUR_BRANCH # Pushes the changes in your local repository up to the remote repository you specified as the origin 

    Руководство по Git. Переименование.

    В данной статье мы рассмотрим процесс переименования файлов в Git.

    Попробуем переименовать класс Technology.java на Skill.java.

    На текущий момент, наш проект имеет следующий вид:

    gitStructureAfterMoving

    Для переименования данного класса мы можем использовать следующую команду:

     git mv company/Technology.java company/Skill.java 

    Проверяем статус git:

     git status -s R company/Technology.java -> Skill.java 
     git commit -m "Renaming class Technology to Skill" 

    Сейчас наш проект имеет следующую структуру:

    gitStructureAfterRenaming

    На этом мы заканчиваем изучение переименования файлов в системе Git.

    В следующей статье мы рассмотрим, каким образом в Git происходит удаление файлов.

    Git для начинающих. Часть 8. Добавление, удаление и переименование файлов в репозитории

    Follow us on Google Plus Follow us on rss

    В рамках данного урока рассмотрим вопросы, касающиеся добавления, удаления и переименования файлов в git репозитории.

    • Добавление файлов в git репозиторий
    • Удаление файлов из git репозитория и из stage
      • Удаление файла из stage
      • Удаление файлов из git репозитория
        • Первый способ
        • Второй способ
        • Первый способ
        • Второй способ

        Добавление файлов в git репозиторий

        Добавление файлов в репозиторий – это достаточно простая операция, мало чем отличающаяся от отправки изменений в отслеживаемых файлах в репозиторий. Мы уже не раз выполняли эту операцию в предыдущих уроках, но сделаем это ещё раз. Создадим новый репозиторий, для этого перейдите в каталог, в котором вы хотите его расположить и введите команду git init .

        > git init

        Создайте в каталоге файл README.md любым удобным для вас способом, мы сделаем это с помощью команды touch .

        > touch README.md

        Теперь проверим состояние отслеживаемой директории.

        > git status On branch master Initial commit Untracked files: (use "git add . " to include in what will be committed) README.md nothing added to commit but untracked files present (use "git add" to track) 

        Как вы можете видеть: в рабочей директории есть один неотслеживаемый файл README.md . Git нам подсказывает, что нужно сделать для того, чтобы начать отслеживать изменения в файле README.md : необходимо выполнить команду git add , сделаем это.

        > git add README.md

        Посмотрим ещё раз на состояние.

        > git status On branch master Initial commit Changes to be committed: (use "git rm --cached . " to unstage) new file: README.md

        Видно, что информация о появлении нового файла попала в stage . Для того чтобы это изменение зафиксировалось в репозитории необходимо выполнить команду git commit .

        > git commit -m "add README.md file" [master (root-commit) 0bb6c94] add README.md file 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md

        Теперь в рабочей директории и в stage нет объектов, информацию об изменении которых необходимо внести в репозиторий.

        > git status On branch master nothing to commit, working tree clean

        В репозиторий был сделан один коммит.

        > git log --oneline 0bb6c94 add README.md file

        Удаление файлов из git репозитория и из stage

        Удаление файла из stage

        Вначале разберемся со stage . Создадим ещё один файл.

        > touch main.c

        “Отправим” файл main.c в stage .

        > git add main.c

        Внесем изменения в README.md .

        > echo "# README" > README.md

        Информацию об этом также отправим в stage .

        > git add README.md

        Посмотрим на состояние stage .

        > git status On branch master Changes to be committed: (use "git reset HEAD . " to unstage) modified: README.md new file: main.c

        Если нам необходимо убрать из stage , какой-то из этих файлов (main.c или README.md), то для этого можно воспользоваться командой git –rm cashed , сделаем это для файла main.c .

        > git rm --cached main.c rm 'main.c'

        Теперь посмотрим на состояние рабочей директории и stage .

        > git status On branch master Changes to be committed: (use "git reset HEAD . " to unstage) modified: README.md Untracked files: (use "git add . " to include in what will be committed) main.c

        Видно, что изменения в файле README.md готовы для коммита, а вот файл main.c перешел в состояние – неотслеживаемый. Отправим main.c в stage и, после этого, сделаем коммит в репозиторий.

        > git add main.c > git commit -m "add main.c and do some changes in README.md" [master 49049bc] add main.c and do some changes in README.md 2 files changed, 1 insertion(+) create mode 100644 main.c

        Удаление файлов из git репозитория

        Удалить файл из репозитория можно двумя способами: первый – удалить его из рабочей директории и уведомить об этом git ; второй – воспользоваться средствами git . Начнем с первого способа. Для начала посмотрим, какие файлы у нас хранятся в репозитории.

        > git ls-tree master 100644 blob 7e59600739c96546163833214c36459e324bad0a README.md 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 main.c

        Удалим файл main.c из рабочей директории.

        > rm main.c > ls README.md

        Уведомим об этом систему git .

        > git rm main.c rm 'main.c'

        Вместо команды git rm можно использовать git add , но само слово add в данном случае будет звучать несколько неоднозначно, поэтому лучше использовать rm . На данном этапе еще можно вернуть все назад с помощью команды git checkout — , в результате, в нашу рабочую директорию будет скопирован файл из репозитория. Создадим коммит, фиксирующий удаление файла.

        > git commit -m "remove main.c" [master d4e22ae] remove main.c 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 main.c

        Теперь в репозитории остался только один файл README.md .

        > git ls-tree master 100644 blob 7e59600739c96546163833214c36459e324bad0a README.md

        Второй способ – это сразу использовать команду git rm без предварительного удаления файла из директории. Вновь создадим файл main.c и добавим его в репозиторий.

        > touch main.c > git add main.c > git commit -m "add main.c file" [master 6d93049] add main.c file 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 main.c > git ls-tree master 100644 blob 7e59600739c96546163833214c36459e324bad0a README.md 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 main.c

        Удалим файл из репозитория.

        > git rm main.c rm 'main.c' > git commit -m "deleted: main.c file" [master ba7d027] deleted: main.c file 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 main.c

        Файла main.c больше нет в репозитории.

        > git ls-tree master 100644 blob 7e59600739c96546163833214c36459e324bad0a README.md

        Его также нет и в рабочем каталоге.

        > ls README.md

        Удалите файл README.md из репозитория самостоятельно.

        Переименование файлов в git репозитории

        Как и в случае с удалением, переименовать файл в git репозитории можно двумя способами – с использованием и без использования средств операционной системы.

        Первый способ. Создадим файл test_main_file.c и добавим его в репозиторий.

        > touch test_main_file.c > git add test_main_file.c > git commit -m "add test_main_file.c" [master 6cf53ac] add test_main_file.c 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test_main_file.c

        Содержимое репозитория после этого будет выглядеть так.

        > git ls-tree master 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 test_main_file.c

        Переименуем его на test_main.c .

        Сделаем это в рабочей директории.

        > mv test_main_file.c test_main.c

        Теперь отправим изменение в репозиторий.

        > git add . > git commit -m "Rename test_main_file.c" [master 79528c4] Rename test_main_file.c 1 file changed, 0 insertions(+), 0 deletions(-) rename test_main_file.c => test_main.c (100%)

        В репозитории и в рабочей директории будет находится только файл test_main.c .

        > git ls-tree master 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 test_main.c > ls test_main.c

        Второй способ.

        В рамках второго способа рассмотрим работу с командой git mv . Переименуем файл test_main.c в main.c . Текущее содержимое репозитория и рабочего каталога.

        > git ls-tree master 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 test_main.c > ls test_main.c

        Переименуем файл test_main.c на main.c средствами git .

        > git mv test_main.c main.c > git commit -m "Rename test_main.c file" [master c566f0e] Rename test_main.c file 1 file changed, 0 insertions(+), 0 deletions(-) rename test_main.c => main.c (100%)

        Имя файла изменилось как в репозитории так и в рабочем каталоге.

        > git ls-tree master 100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 main.c > ls main.c

        Отличный курс по git делают ребята из GeekBrains , найдите в разделе “Курсы” курс “Git. Быстрый старт” , он бесплатный!

        Раздел: Git Git для начинающих Метки: Git, Git для начинающих, Уроки по Git

        Git для начинающих. Часть 8. Добавление, удаление и переименование файлов в репозитории : 1 комментарий

        1. Игорь 09.12.2021 В целом, очень неплохо написанный начальный курс. Что бросилось в глаза, так это то, что вы вводите такую конструкцию как git rm –cached без объяснений, что это значит и чем отличается от простого git rm. Между тем это достаточно важный и не слишком очевидный момент (cached, staged). Я не искал по всем частям опубликованного вами материала. Возможно, есть и другие подобные места, требующие чуть более основательных пояснений. Я понимаю, что в короткую статью очень сложно втиснуть все нужное, не раздувая ее до объема книги, но тем не менее.

        Как мне изменить имена папок в гит? (с больших букв на маленькие)

        Недавно начал осваивать гит. Когда я делал первый пуш в репозиторий на гитхабе, случайно назвал директории с большой буквы. Хотел поменять регистр первых букв в папках, но команда git add * почему-то отказывается распознавать регистр и пушит всё как и раньше с большой буквы, либо же вообще говорит что изменений никаких не было. Как это исправить? Можно ли напрямую как-нибудь переименовать папки в репозитории? Регистр здесь важен т.к. все эти директории являются пакетами и при импорте интерпретатор может просто напросто их не увидеть.

        Отслеживать

        13.7k 12 12 золотых знаков 43 43 серебряных знака 75 75 бронзовых знаков

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *