改变git结构

Tau*_*han 16 git github repository

我想以某种方式改变git目录结构.目前架构就像

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

I want it like

html(repo)
    .git   
     VL
       code files
       ......
       ......
Run Code Online (Sandbox Code Playgroud)

我有一个解决方案来存档当前的仓库,然后创建具有上述结构的新仓库.但这种方法的坏处在于它删除了以前的所有历史记录.还有更好的解决方案吗?

eck*_*kes 22

从更改根文件夹的名称VL,以html应是没有问题的,因为git的只适用于低于该水平的目录.

那么,剩下的就是介绍文件夹VL下面的html文件夹并移动到code files那里:

mkdir VL
git mv <all your code> VL
git commit -m "moved all my code under VL"
Run Code Online (Sandbox Code Playgroud)

使用git mv你告诉git你移动的东西,所以它仍然可以跟踪历史.


编辑:
正如Benjol在评论中指出的那样,使用git mv并非必要.您可以通过复制<all your code>VL,然后执行相同的操作

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

git非常聪明,能够识别出这种运动.


Ada*_*ruk 5

手动移动您的代码。然后,

git add -A
git commit -m "moved code"
Run Code Online (Sandbox Code Playgroud)

完毕。