изменение структуры мерзавца - PullRequest
14 голосов
/ 15 февраля 2012

Я хочу как-то изменить структуру каталогов git. В настоящее время архитектура похожа на

VL(repo)    
    .git (hidden)    
     code files    
     ......    
     .....

I want it like

html(repo)
    .git   
     VL
       code files
       ......
       ......

У меня было решение архивировать текущее репо, а затем создать новое репо с описанной выше структурой. Но плохая вещь об этом подходе - то, что он удаляет всю предыдущую историю. есть ли лучшее решение?

Ответы [ 2 ]

21 голосов
/ 15 февраля 2012

Изменение имени корневой папки с VL на html не должно быть проблемой, поскольку git работает только с каталогами ниже этого уровня.

Итак, осталось только представить папку VLниже папки html и переместите туда все code files:

mkdir VL
git mv <all your code> VL
git commit -m "moved all my code under VL"

Используя git mv, вы сообщаете git, что вы переместили вещи, чтобы они все еще могли отслеживать историю.


Редактировать:
Как отмечает Бенджол в своем комментарии, использование git mv необязательно.Вы можете добиться того же, скопировав <all your code> в VL, а затем

  • git add VL
  • git rm <all your code>
  • git commit -m "moved all my code under VL

Git достаточно умен, чтобы распознать движение.

2 голосов
/ 15 февраля 2012

Переместите свой код вручную. Тогда

git add -A
git commit -m "moved code"

Готово.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...