Как правильно переименовать каталог в репозитории Git?
в репозитории Git, как правильно переименовать каталог? Я думаю, что он должен работать, чтобы скопировать каталог, который будет переименован в новый каталог с нужным именем, и удалить старый каталог, и git add,git commit и push все. Но разве это лучший способ?
10 ответов:
основное переименование (или перемещение):
git mv <old name> <new name>чувствительное к регистру переименование-например. от
casesensitiveдоCaseSensitive-вы должны использовать два шага:git mv casesensitive tmp git mv tmp CaseSensitive(подробнее о чувствительности к регистру в Git...)
...а затем commit и push - это самый простой способ переименовать каталог в репозитории git.
Если вы получаете эту ошибку: fatal: переименование 'foldername' не удалось: недопустимый аргумент
попробуйте это:
git mv foldername tempname && git mv tempname folderName
1. Измените имя папки с oldfolder на newfolder
git mv oldfolder newfolder2. Если newfolder уже находится в вашем репозитории и вы хотите переопределить его и использовать: -силу
git mv -f oldfolder newfolderНе забудьте добавить изменения в индекс и зафиксировать их после переименования с помощью git mv.
3. Переименование foldername в folderName в файловых системах, нечувствительных к регистру
простое переименование с нормальным mv команда (не git mv) не будет распознана как изменение файла из git. Если вы попробуете это с помощью команды "git mv", как в следующей строке
git mv foldername folderNameесли вы используете файловую систему без учета регистра, например, вы находитесь на Mac, и вы не настроили ее на учет регистра, вы получите сообщение об ошибке, подобное этому:
fatal: переименование 'foldername' не удалось: недопустимый аргумент
а вот что вы можете сделать, чтобы сделать его работа: -
git mv foldername tempname && git mv tempname folderNameЭто разбивает процесс переименования путем переименования папки сначала в совершенно другое имя папки. После переименования его в другое имя папки папку можно, наконец, переименовать в новое имя папки. После этих "git mv", опять же, не забудьте добавить и зафиксировать изменения. Хотя это, вероятно, не красивая техника, она прекрасно работает. Файловая система по-прежнему не распознает изменение буквенных регистров, но git делает это из-за переименования его в новое имя папки, и это все, что мы хотели :)
вы можете переименовать каталог, с помощью файловой системы. Тогда вы можете сделать
git rm <old directory>иgit add <new directory>(страница поможет). Затем вы можете совершить и нажать.Git обнаружит, что содержимое одинаковое и что это просто операция переименования, и она будет отображаться как запись переименования в истории. Вы можете проверить, что это так перед фиксацией с помощью
git status
из веб-приложения я думаю, что вы не можете, но вы можете переименовать все папки в клиенте Git, он будет перемещать ваши файлы в новые переименованные папки, чем фиксировать и нажимать на удаленный репозиторий.
у меня была очень похожая проблема: Мне пришлось переименовать разные папки из верхнего в нижний регистр (например, Abc - > abc), я переименовал все папки с фиктивным именем (например, " abc___") и затем перешел в удаленный репозиторий, после чего я переименовал все папки в оригинал имя со строчными буквами (как abc) и он взял их!
к вашему сведению я постоянно получаю "не удалось \ отказано в доступе" при использовании любого черепаха или параметры командной строки, чтобы сделать переименовать. Он работает только с параметром командной строки после того, как я закрыл окно Проводника.
On https://github.com в их интерфейсе репозитория:
перейдите в настройки -- > имя репозитория -- > введите новое имя в этой области.
Я просто переименовал каталог, а затем добавил, зафиксировал и нажал на remote. Он отлично работает
mv в Git добавить new_dir git commit -m" " git push
просто переименуйте папку. git - это "контент-трекер", поэтому хэши SHA1 одинаковы, и git знает, что вы переименуете его. Единственное, что меняется-это дерево-объект.
rm <directory> git add . git commit
Comments