使用git下载而没有回购数据,并且在本地文件夹中

时间:2018-09-15 01:12:23

标签: git github

是否可以使用git下载Github项目的副本:

  • 也无需下载内部/.git/文件夹。 (我将自己生成)
  • 到我当前的目录,而不是仓库的文件夹名。

我想将项目下载到网站的根目录中,而不要下载到项目子文件夹中。

如果我这样做:

git clone --depth=1 https://github.com/some_github_account/project_1.git

所有内容都会下载,但都将其放入我的文档根目录“ project_1”中的一个文件夹中,而在该文件夹中是我也不想要的/.git/文件夹。

/home/bob/www/project_1/
/home/bob/www/project_1/.git/

使用git将所有文件从项目直接下载到我所在的文件夹中而没有所有回购内容的最精简,最卑鄙的方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以使用以下命令:

git clone https://github.com/some_github_account/project_1.git .
rm -rf ./.git

它将克隆当前文件夹中的项目,并删除.git文件夹。

您现在可以使用git init命令添加git设置。

答案 1 :(得分:0)

谢谢大家的帮助,最后,不是一个答案解决了我所有的问题,而是结合了建议和其他研究帮助我准确地获得了所需。

当我第一次设置一个具有连接到GitHub的新站点的客户端时,我需要做的某些事情,其余的我将通过shell_exec()函数在PHP中完成。

git clone --depth=1 https://github.com/modusinternet/Custodian-CMS.git /tmp/Custodian-CMS
rm -rf /tmp/Custodian-CMS/.git
shopt -s dotglob
cp -r /tmp/Custodian-CMS/* /home/YOUR_ACCOUNT/YOUR_WEB_FOLDER
rm -rf /tmp/Custodian-CMS
git init
git add --all
git config --global user.email ""
git config --global user.name ""
git commit -m "first commit"
git remote add origin git@github.com:YOUR_ACCOUNT_ON_GITHUB/YOUR_REPO_ON_GITHUB.git
git push -u origin master

这会拉出我需要的副本,清理它,放到它所属的位置,在新位置上初始化git,将它连接到我的新仓库中,然后将所有内容推送到上面,以便我可以开始进行工作。

>

就我而言,我不需要向后兼容,因为与我合作的每个客户端都完全改变了起始模板。

我将在管理员中添加一个按钮,以帮助稍后将FTP上传直接处理到服务器,但这是我将其与存储库重新同步的代码:

git add --all
git commit -m "From server"
git push -u origin master

特别感谢Andrea Peekatchu Follack,rishabh agarwal和CodeWizard的建议。