在 Android Studio 中访问 git 子模块
Accessing git submodule in Android Studio
我刚开始为自己的项目使用源代码管理,现在我想添加 Joda-Time。我想将它添加为子模块,所以我进入终端并执行:
git submodule add https://github.com/JodaOrg/joda-time.git
并且它成功下载了所有文件。然后我运行:
git submodule init
一无所获。
git submodule status
returns
b9fe534c7f5876eced6494a6d6c1deaf2528a579 joda-time (v2.7-17-gb9fe534)
我检查了我的项目根目录,我看到了新的 joda-time 目录及其源代码。但是现在我如何访问我项目中的库?我错过了一步吗?
您错过了 git submodule update
。来自文档:
Update the registered submodules to match what the superproject
expects by cloning missing submodules and updating the working tree of
the submodules.
您也可以使用 --init
选项来完成,它会为您完成 git submodule init
。
试试 git submodule update --init
。这将允许您一步完成 git submodule init
和 git submodule update
。请注意,您只需添加一次 --init
选项。
引自doc:
update
Update the registered submodules to match what the superproject
expects by cloning missing submodules and updating the working
tree of the submodules.
另一方面,git init
本身就是
copying submodule names and urls from [your] .gitmodules [file] to [your local] .git/config [folder].
完成此操作后,您会注意到您的子模块处于分离状态。您可以简单地从那里检出任何现有分支,例如 git checkout master
检出上游 master
分支。
我对所提供的答案一无所知。当我不断在互联网上搜索帮助提示时,我偶然发现了 Joda-Time-Android,所以我删除了原来的 Joda-Time 子模块并再次尝试使用新的。有用!它已将自己添加到我的项目中并准备好运行!
在我仍在对原始问题进行故障排除期间,Joda-Time 不包含 build.gradle 文件,但 Joda-Time-Android 包含 - 我认为这就是问题所在。
我刚开始为自己的项目使用源代码管理,现在我想添加 Joda-Time。我想将它添加为子模块,所以我进入终端并执行:
git submodule add https://github.com/JodaOrg/joda-time.git
并且它成功下载了所有文件。然后我运行:
git submodule init
一无所获。
git submodule status
returns
b9fe534c7f5876eced6494a6d6c1deaf2528a579 joda-time (v2.7-17-gb9fe534)
我检查了我的项目根目录,我看到了新的 joda-time 目录及其源代码。但是现在我如何访问我项目中的库?我错过了一步吗?
您错过了 git submodule update
。来自文档:
Update the registered submodules to match what the superproject expects by cloning missing submodules and updating the working tree of the submodules.
您也可以使用 --init
选项来完成,它会为您完成 git submodule init
。
试试 git submodule update --init
。这将允许您一步完成 git submodule init
和 git submodule update
。请注意,您只需添加一次 --init
选项。
引自doc:
update
Update the registered submodules to match what the superproject expects by cloning missing submodules and updating the working tree of the submodules.
另一方面,git init
本身就是
copying submodule names and urls from [your] .gitmodules [file] to [your local] .git/config [folder].
完成此操作后,您会注意到您的子模块处于分离状态。您可以简单地从那里检出任何现有分支,例如 git checkout master
检出上游 master
分支。
我对所提供的答案一无所知。当我不断在互联网上搜索帮助提示时,我偶然发现了 Joda-Time-Android,所以我删除了原来的 Joda-Time 子模块并再次尝试使用新的。有用!它已将自己添加到我的项目中并准备好运行!
在我仍在对原始问题进行故障排除期间,Joda-Time 不包含 build.gradle 文件,但 Joda-Time-Android 包含 - 我认为这就是问题所在。