Git 子模块:指定特定的 SHA?
我在项目中引用了 git 子模块,现在需要在目标 git 存储库中引用特定的 SHA。
# .gitmodules
[submodule "vendor/plugins/ssl_requirement"]
path = vendor/plugins/ssl_requirement
url = git://github.com/retr0h/ssl_requirement.git
我想要的 SHA 是 bc96ad96407a72a60e0542cf3b0cecc6ff9e278e 。
I'm referencing a git submodule in my project, and now need to reference a specific SHA in the target git repo.
# .gitmodules
[submodule "vendor/plugins/ssl_requirement"]
path = vendor/plugins/ssl_requirement
url = git://github.com/retr0h/ssl_requirement.git
The SHA I want is bc96ad96407a72a60e0542cf3b0cecc6ff9e278e
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据定义,子模块始终引用子项目中的特定 SHA1。该 SHA1 不在 .gitmodules 文件中表示,而是表示为包含子模块的树对象中的条目。在 git 中设置此选项的方法是
cd
进入子模块,检查所需的 SHA1,然后cd
返回父存储库并提交更改,这将像更改后的文件一样显示。所以在你的情况下你可以做的是
Submodules, by definition, always reference particular SHA1 in the subproject. That SHA1 isn't expressed in the
.gitmodules
file, but is instead expressed as the entry in the tree object that contains the submodule. The way you set this in git is bycd
ing into the submodule, checking out the SHA1 you want, thencd
ing back to the parent repo and committing your change, which will show up just like a changed file.So in your case what you can do is