Git mv не работает с Fatal: исходный каталог пуст
Я хотел бы сохранить историю файлов в подпапке репо. Но мне нужно переименовать имя папки верхнего уровня. Когда я запускаю 'git mv dirName newDirName
Я получаю "Fatal: исходный каталог пуст";
Мой исходный каталог имеет следующую структуру:
gitRepoDir
--.git
--Source
-- -DirLevel2
-- --DirLevel3
-- --DirLevel4
-- --DirLevel5
+++ --DirNameToRename
+++ --sub1dir
+++ --File
+++ --sub2dir
+++ --File
+++ --sub3dir
+++ --File
+++ --File
+++ --sub4dir
+++ --File
Есть ли способ переименовать папку верхнего уровня и сохранить историю файлов в подпапках ниже? Или мне нужно сначала создать структуру каталогов, а затем переместить файлы с помощью команды git mv?
Ответы
Ответ 1
Я думаю, что "Fatal: исходный каталог пуст", означает, что dirName не находится под управлением git, потому что он не является частью источника.
Например, вы можете попробовать "git status", чтобы выяснить, что можно контролировать с помощью git.
Ответ 2
Вы должны просто сказать git mv пропустить любую операцию, приводящую к состоянию отказа
git mv -k dirName newDirName
Ответ 3
Обычно имя пути, используемое в команде git, представляет собой относительный путь, запущенный из текущего каталога.
Итак, для вашего вопроса необходимо проверить следующее.
1) Ли dirName - это каталог, управляемый git. вы можете использовать команду git ls-files
2) Будет ли папка dirName находиться под текущим режиссером.
Ответ 4
Это может произойти в Windows, если вы используете обратную косую черту в пути к исходной папке.