改变git结构

时间:2012-02-15 12:08:54

标签: git github repository

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

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

I want it like

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

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

2 个答案:

答案 0 :(得分:20)

将根文件夹的名称从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你移动了东西,所以它仍然可以跟踪历史。


修改
正如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非常聪明,能够识别出这一动作。

答案 1 :(得分:2)

手动移动代码。然后,

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

完成。