Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.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,我创建了太多的文件夹层,所以现在我需要将项目上移一层。下面是我对文件夹结构的了解 OMDM/OKE/OKEPortal 我希望新结构看起来像这样,同时保持Git记录的历史记录 OMDM/OKEPortal 我使用了下面的Git命令,但它最终改变了文件夹名称,而不是移动它 git mv OKEPortal OKE git add OKEPortal 不知何故,它总是以更改文件夹名称而告终 更新: 当我在OMDM目录中时,我运行以下命令 mv OKE/OKEPortal OKEPortal r

我创建了太多的文件夹层,所以现在我需要将项目上移一层。下面是我对文件夹结构的了解

OMDM/OKE/OKEPortal
我希望新结构看起来像这样,同时保持Git记录的历史记录

OMDM/OKEPortal
我使用了下面的Git命令,但它最终改变了文件夹名称,而不是移动它

git mv OKEPortal OKE
git add OKEPortal
不知何故,它总是以更改文件夹名称而告终

更新:

当我在OMDM目录中时,我运行以下命令

mv OKE/OKEPortal OKEPortal
rm -r OKE
git add OKEPortal

我想之前我没有得到我想要的结果,因为我在执行“
git mv OKEPortal OKE
”时没有正确放置文件夹路径,因此它总是将文件夹名称从OKEPortal更改为OKE。这是我的错误。源目录和目标目录不应相同,否则将重命名文件夹而不是移动。

如果位于所有项目根目录的
.git
文件夹处于

OMDM/OKE/OKEPortal/.git

然后,您可以使用鼠标或命令
mv
简单地移动文件夹
OKEPortal
。如果位于所有项目根目录下的
.git
文件夹处于禁用状态,请不要忘记删除文件夹
OKE

OMDM/OKE/OKEPortal/.git

然后,您可以使用鼠标或命令
mv
简单地移动文件夹
OKEPortal
。别忘了删除文件夹
OKE

您是否尝试过简单地在操作系统中移动您想要的东西(不使用Git命令)并使用Git add?我尝试手动复制文件夹并移动到“OKE”文件夹,但当我启动Git Bash时,它显示了删除和添加。我希望“移动到”或其他用户知道这不是新项目。这是否回答了你的问题?我看了那篇文章,并看了第二个选项,即“移动”而不是“复制”。移动和我一样,但没有移动。@Phil git状态在移动文件时总是显示“添加/删除”。但是执行git add.应该让git知道它们被移动了,并且应该正确地显示“移动”。你是否尝试过简单地用操作系统移动东西(不使用git命令)并使用git add?我尝试过手动复制文件夹并移动到“OKE”文件夹,但当我启动git Bash时,它显示删除和添加。我希望“移动到”或其他用户知道这不是新项目。这是否回答了你的问题?我看了那篇文章,并看了第二个选项,即“移动”而不是“复制”。移动和我一样,但没有移动。@Phil git状态在移动文件时总是显示“添加/删除”。但是做
git add.
应该让git理解它们被移动了,并且应该正确地显示“moved”。.git位于称为Automation的顶层。因此,这个Automation/OMDM/OKE/OKEPortal So“.git”似乎在Automation文件夹中。我认为git足够智能,可以在执行
git add
时检测到您移动了文件。当我执行move命令时,是否需要导航到OKEPortal文件夹?因为如果我不这样做,它会说文件夹不存在,“.git”位于称为自动化的顶层。因此,这个Automation/OMDM/OKE/OKEPortal So“.git”似乎在Automation文件夹中。我认为git足够智能,可以在执行
git add
时检测到您移动了文件。当我执行move命令时,是否需要导航到OKEPortal文件夹?因为如果我不这样做,它会说文件夹不存在