我正在尝试使用 Gits 的“子模块”功能在项目中包含第 3 方代码。我只需要子模块中的几个文件,并希望排除它附带的所有文档等。
我怎样才能做到这一点?
我正在尝试使用 Gits 的“子模块”功能在项目中包含第 3 方代码。我只需要子模块中的几个文件,并希望排除它附带的所有文档等。
我怎样才能做到这一点?
在我的子模块中,我有一个我想在本地/examples
删除的文件夹,以防止自动生成的 makefile 看到这些文件;不得不对删除一无所知。origin
在 git CLI 中:
git update-index --assume-unchanged <path/to/file>
再次跟踪本地更改:
git update-index --no-assume-unchanged <path/to/file>
或者在 SourceTree 中,根据Fabian Blechschmidt 的回答创建自定义操作。
注意这与“停止跟踪”不同,其中origin
确实也会在提交时停止跟踪文件 - 不是您想要的。
git 子模块是嵌入在另一个 git 存储库中的 git 存储库。除此之外,它没有什么特别之处——子模块的行为方式与任何其他 git 存储库相同。克隆存储库时,您将获得与存储库关联的所有文件和所有历史记录。
如果您只需要几个文件,并且对跟踪第三方项目的更改历史不感兴趣,也许您应该将特定文件复制到您的项目中并完成。