我已经给予访问服务器,并希望克隆 git 回购到我的根文件夹。但是,当我做 git 克隆它将使我的项目名称文件夹,我的项目文件夹是我的根。我没有访问我的父文件夹 我的根是
/var/www/sites/mysite/
而当我做克隆文件夹结构将
/var/www/sites/mysite/mysite
您可以将项目克隆到子文件夹中,然后它们将包括 .git文件夹在内的所有文件移动到父文件夹(您的根文件夹)中。
.git
git clone接受最后一个参数,该参数是目标目录,默认情况下它是项目的名称,但您可以更改它。在你的情况下,你可能只需要简单的 .:
git clone
.
$ git clone origin-url .
但请注意,来自 man git-clone:
man git-clone
只有当目录为空时,才允许克隆到现有目录中。
你也可以设置一个新的 repo,然后跟踪远程和分支,获取原始存储库中的所有对象,并更改为主分支:
git init . git remote add origin git@github.com:user/repo.git git fetch origin git checkout master
记住,git 存储库只是存储它的目录结构。这意味着,当您将存储库克隆到错误的目录中时,只需将目录内容移动到您希望的任何其他地方,存储库数据仍然完好无损。例如,可以从命令行运行以下命令:
$ mv /var/www/sites/mysite/mysite/* /var/www/sites/mysite` $ mv /var/www/sites/mysite/mysite/.* /var/www/sits/mysite` $ rmdir /var/www/sites/mysite/mysite
这在 Windows 上也运行良好。
git init git remote add origin git@github.com:user/repo.git git pull origin master
我发现实现这一点的一个简单方法是,在您想要克隆到的目录中初始化一个 Git repo,然后从远程进行拉取:
git init git pull <remote-url>
git clone git@github.com:user/repo.git .
注意该命令末尾的 .。
或者另一种方式是