相关疑难解决方法(0)

将Git子模块设置为浅克隆和稀疏检出?

许多供应商的Objective-C库(例如facebook-ios-sdk)指示您将其repo的文件/目录的某个子集复制到Xcode项目中.这样做的一个问题是你不知道你有什么版本的供应商代码.另一个原因是,如果您对供应商代码进行更改,则通过Git提交更改并不容易.

作为一个解决方案,我想将每个供应商库添加为我项目的repo的Git子模块,并带有一些额外的设置(例如,在.gitmodules文件中).这样,如果另一个人克隆我的项目git submodule update --init,他们的repo和子模块将具有与我相同的状态,因为他们将使用我设置的相同默认设置:

  1. 稀疏结账:仅查看子模块的某些文件.
  2. 浅克隆:只克隆子模块的某个SHA1.

如何为Git子模块设置上述设置?

git clone github git-submodules sparse-checkout

19
推荐指数
2
解决办法
1万
查看次数

Git - 如何自动将目录中的更改推送到另一个分支

完成问题重写

所以我认为我非常简单直接地解释了这个问题,但似乎我过于简单了,所以这里是所有额外的细节.希望这有助于每个人看到这也不是重复.


我有一个存储库(项目),我希望自动化将提交从分支中的一个目录推送到另一个分支的过程; 我还没有遇到过的东西.

这是我的项目的完整结构:

[PROJECT MASTER BRANCH]
|- gh-pages    (directory)
|- css         (directory)
|- index.html  (file)
|- readme.md   (file)

[PROJECT gh-pages BRANCH]
|- (empty at the moment)
Run Code Online (Sandbox Code Playgroud)

我希望做的是创建一个钩子,它将从主分支中自动处理我的gh-pages目录中的更改,并通过gh-pages分支复制/克隆/替换它们(无论哪个术语使用正确),项目网站分支.这是一个省略所有其他文件的示例:

[PROJECT MASTER BRANCH]
|- gh-pages         (directory)   <=== SEE UPDATE BELOW [A]
|  |- css           (directory)
|  |  |- style.css  (file)
|  |- index.html    (file)

[PROJECT gh-pages BRANCH]
|- css           (directory)   <=== SEE UPDATE BELOW [B]
|  |- style.css  (file)
|- index.html    (file)
Run Code Online (Sandbox Code Playgroud)

我对这个级别的Git Hub完全陌生.我通常只是坚持基础,从不使用终端/外壳.总而言之,为了澄清我希望做的事情,我想:

  • 只需要在[Master Branch]工作.我需要对[gh-pages Branch]进行的所有更改我在[Master Branch]的gh-pages目录中进行的更改
  • 最好通过添加一个似乎是post-receive hook的简单文件来实现这一点?

这是我尝试使用的一些post-receive钩子代码(我是通过研究一些东西来实现的)但它不起作用: …

git configuration github

5
推荐指数
1
解决办法
1402
查看次数