git稀疏checkout到当前目录

时间:2016-01-12 05:41:40

标签: git

我们目前将开发网站设置为git存储库。目前我们通过使用拉入另一个目录来发布网站,并将其作为" production"我们所有网站的版本。这样做的缺点是,这意味着我无法将客户分成单独的cPanel帐户。为了解决这个问题,我创建了一个cPanel帐户,然后按照this post

中的说明进行操作
// Update chrome alone
    webdriver-manager update --standalone=0 --chrome --alternate_cdn http://chromedriver.storage.googleapis.com/

// Update selenium alone
    webdriver-manager update --chrome=0 --standalone --alternate_cdn http://selenium-release.storage.googleapis.com/

我有一些问题,甚至不知道这是否是最佳方法。

因为这会获取整个存储库,如果我们使用当前的库存执行此操作,则意味着每个客户使用的磁盘空间几乎都是。

这可能只是语法问题,但是使用上面的命令,它会将新数据放在user@sv1 [/home/ncpn/public_html]# git init Initialized empty Git repository in /home/ncpn/public_html/.git/ user@sv1 [/home/ncpn/public_html]# git remote add -f origin /home/tendesig/public_html/respond/app/sites Updating origin remote: Counting objects: 15586, done. remote: Compressing objects: 100% (14816/14816), done. remote: Total 15586 (delta 6694), reused 0 (delta 0) Receiving objects: 100% (15586/15586), 949.18 MiB | 36.26 MiB/s, done. Resolving deltas: 100% (6694/6694), done. From /home/tendesig/public_html/respond/app/sites * [new branch] master -> origin/master user@sv1 [/home/ncpn/public_html]# git config core.sparseCheckout true user@sv1 [/home/ncpn/public_html]# echo "ncpn/" >> .git/info/sparse-checkout user@sv1 [/home/ncpn/public_html]# git pull origin master 中,我需要它只在/public_html/ncpn

使用稀疏结账甚至是我想要完成的最佳方法吗?如果是这样,我如何回显结账,以便将文件复制到当前目录而不是说/public_html

1 个答案:

答案 0 :(得分:1)

  

使用稀疏结账甚至是我想要完成的最佳方法吗?

我希望每个客户都有一个分支,而不是子文件夹。

  

如果是这样,我如何回显结账,以便将文件复制到当前目录而不是/ public_html / ncpn?

您可以在外部文件夹中结帐,并在/ public_html和该文件夹之间建立符号链接。

如果你为每个客户分支一个分支,你可以(使用git 2.5+):

  • 所有回购一次
  • 多次结账(使用git worktree

请参阅" Multiple working directories with Git?"