Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git使用子模块重命名目录_Git - Fatal编程技术网

Git使用子模块重命名目录

Git使用子模块重命名目录,git,Git,给定一个git存储库,其中有一个我签出子模块的目录,如何重命名顶级目录 $ git init Initialized empty Git repository in /home/work/asdasd/.git/ $ mkdir asd $ touch asd/.keepme $ git add asd/.keepme $ git commit -a -m "asd" [master (root-commit) 932f011] asd 0 files changes create mo

给定一个git存储库,其中有一个我签出子模块的目录,如何重命名顶级目录

$ git init
Initialized empty Git repository in /home/work/asdasd/.git/
$ mkdir asd
$ touch asd/.keepme
$ git add asd/.keepme
$ git commit -a -m "asd"
[master (root-commit) 932f011] asd
  0 files changes
  create mode 100644 asd/.keep
$ git submodule add git@github.com:test/test.git asd/subdir
Cloning into 'asd/subdir'...
remote: Counting objects: 800, done.
remote: Compressing objects: 100% (281/281), done.
remote: Total 800 (delta 523), reused 786 (delta 509)
Receiving objects: 100% (800/800), 109.46 KiB, done.
Resolving deltas: 100% (523/523), done.
$ git commit -a -m "submodule"
[master e0fe8e7] submodule
  2 files changed, 4 insertions(+)
  create mode 100644 .gitmodules
  create mode 160000 asd/subdir
现在,如果我尝试重命名
asd
目录,我会得到一个错误:

 $ git mv asd foo
 fatal: source directory is empty, source=asd/subdir, destination=foo/subdir

如何重命名它?

您是否尝试过
mv asd foo
,然后
git add-u*
(u代表更新),然后提交并推送更改?

您是否尝试过
mv asd foo
,然后
git add-u*
(u代表更新),然后提交并推送更改?

这不起作用,
git add-u
不会报告任何错误,但也不会添加
foo
(它保持未跟踪状态)。如果我使用
git add
它会丢失子模块信息(像常规内容一样添加),这不起作用,
git add-u
不会报告任何错误,但是,它也不会添加
foo
(它保持未跟踪状态)。如果我使用
git add
它会丢失子模块信息(像常规内容一样添加)