我正在尝试有效地检查服务器上larger git repo hosted on Github内的目录及其内容(特定的wordpress主题目录)。服务器中有现有的WordPress目录,我想将新的主题目录从repo放到服务器上的正确目录中。我首先尝试了an accepted answer中描述的方法来解决类似的问题。当我跑下面的线时,
[scapa]$ git fetch git@github.com:mrengy/new-urban-arts.git
我收到了错误:
致命:不是git存储库(或者是挂载父级的任何父级) 停止在文件系统边界(未设置GIT_DISCOVERY_ACROSS_FILESYSTEM)。
所以我跑了:
[scapa]$ git init
Initialized empty Git repository in /home/newurbanarts/stage.newurbanarts.org/.git/
[scapa]$ git remote add origin git@github.com:mrengy/new-urban-arts.git
现在我跑(as per the accepted answer)时:
[scapa]$ git fetch origin master
[scapa]$ git checkout origin/master -- wp-content/themes/newurbanarts
我明白了:
错误:pathspec'wp-content / themes / newurbanarts'与git已知的任何文件都不匹配。
我做错了什么,我该如何解决这个问题?
答案 0 :(得分:2)
所以在评论中来回反复思考后,我认为我们已经找到了解决方案。
事实证明,GIT确实支持只检查给定存储库的子树的概念,通过一个名为“稀疏结账”的过程,您可以找到有关here的更多信息。
这个概念是初始化一个新的,干净的git存储库,添加你的遥控器,打开设置'core.sparsecheckout',最后检查你的文件夹。