Git 在特定文件夹中克隆存储库但保留默认文件夹名称

Git clone repository in a specific folder but keep default folder name

所以我正在使用 git 克隆命令,但是当我尝试将存储库克隆到特定文件夹时,它不会像通常那样创建文件夹。 例如当我这样使用它时

git clone https://github.com/username/repositoryName.git

它会创建一个名为 repositoryName 的文件夹并将存储库存储在其中。当我这样使用它时

git clone https://github.com/username/repositoryName.git myFolderName

它不会创建它会创建的默认文件夹。它只是将其保存在 myFolderName 中。问题是我希望它存储在该默认文件夹中,但我希望该默认文件夹位于 myFolderName 中。我不能使用 mv 命令,因为我不知道默认文件夹名称并且我同时克隆了很多存储库。有什么想法吗?

提前致谢。

你应该可以做到,

git clone https://github.com/username/repositoryName.git myFolderName/repositoryName

PS: 这就是你如何从 URL

中拆分存储库名称
basename -s .git $(echo "https://github.com/username/repositoryName.git")

像这样的事情怎么样:

## Your links in an array
declare -a arr=("https://github.com/username/repositoryName" "https://github.com/username/repositoryName2")

## Folder to store each of these git repos
folder=myFolderName

## Go through each link in array
for i in "${arr[@]}"
do
    ## Use basename to extract folder name from link
    git clone $i $folder/$(basename $i)
done

这将生成您的以下 git 个存储库:

myFolderName/repositoryName
myFolderName/repositoryName2

注意:您不需要在每个 HTTPS link 的末尾为 git clone 添加 .git

如果您出于某种原因需要包含 .git,您可以使用以下方法删除它:

git clone $i $folder/$(basename ${i%.*})

假设 myFolderName 已经存在,最简单的解决方案是:

git -C myFolderName clone https://github.com/username/repositoryName.git