相关疑难解决方法(0)

如何重命名git存储库?

git mv重命名存储库中的文件或目录.如何重命名git存储库本身?

git

377
推荐指数
14
解决办法
30万
查看次数

git status返回致命:不是git存储库,但.git存在且HEAD具有适当的权限

当我在我的仓库上运行git status时,我得到了 fatal: Not a git repository: /my repo/.git/modules/docs

我已经检查过.git并且包含具有适当权限的HEAD.我可以运行各种其他命令.如果我运行git gui它打开正常并将列出一些已更改的文件,但是缺少很多文件.

我猜测HEAD可能存在某种腐败现象,但不确定.知道如何在不消除整个回购的情况下解决这个问题吗?

更新:我意识到我已经更改了repo目录的名称.错误中引用的目录是目录的旧名称.所以我目前的回购是在,/new dir/.git但错误是说Not a git repository: /old dir/.git/modules/docs.也许git很困惑?

git

59
推荐指数
5
解决办法
7万
查看次数

如何重命名包含子目录中子模块的git repo(项目)

我从不期望重命名git repo,更具体地说,它是顶级文件夹保存项目,会非常困难.是的,项目包含一些子模块,但它是需要重命名的顶级文件夹,而不是子模块文件夹.Git似乎在其子模块机制中记录了一些奇怪的绝对路径.

让我们假设一下

  1. 你所有的项目都在/tmp.
  2. 你有一个proj_masterproj_mod.
  3. 您克隆porj_master,proj_ALL然后克隆prom_mod为其中的子模块.
  4. 你重命名proj_ALLproj_onebillion.然后黑魔法发生了.

以下步骤将重现我提到的问题.我使用的git版本是:

$ git --version
git version 1.7.9.5
Run Code Online (Sandbox Code Playgroud)
  1. 初始化proj_master.

    $ cd /tmp
    $ mkdir proj_master; cd proj_master
    $ git init .
    $ touch README
    $ git add .; git commit -m "hello proj_master"
    
    Run Code Online (Sandbox Code Playgroud)
  2. 初始化proj_mod.

    $ cd /tmp
    $ mkdir proj_mod; cd proj_mod
    $ git init .
    $ touch …
    Run Code Online (Sandbox Code Playgroud)

git git-submodules

19
推荐指数
2
解决办法
3651
查看次数

标签 统计

git ×3

git-submodules ×1