git submodule update --remote 这个命令会从子模块的远程仓库拉取最新的 commit,并更新子模块到该 commit。 提交主仓库的更改: 更新子模块后,主仓库会记录子模块的新 commit ID。你需要将这一更改提交到主仓库: bash git add . git commit -m "Update submodule to latest commit" git push origin master ...
git checkout 切换到指定 commit: git chekcout <commit> 1. HEAD 是一个指针,通常情况下,它指向当前所在分支,而分支又指向一个 commit 提交。HEAD 并不总指向一个分支,某些时候仅指向某个 commit 提交,这就形成 detached HEAD。 切换到 detached HEAD 状态时,会有一个警告。 提示我们可以任意的修改和提交,通...
记录引用Submodule的commit id 在project1中push之后其实就是更新了引用的commit id,然后project1-b在clone的时候获取到了submodule的commit id,然后当执行git submodule update的时候git就根据gitlink获取submodule的commit id,最后获取submodule的文件,所以clone之后不在任何分支上;但是master分支的commit id和HEAD保持一致。
方法一,先 clone 父项目,再初始化 submodule,最后更新 submodule。 初始化只需要做一次,之后每次只需要直接 update 即可,需要注意 submodule 默认是不在任何分支上的,它指向父项目存储的 submodule commit id。 git clone project.git project2 cd project2 git submodule init git submodule update 方法二,采用递归...
modified: subrepo (new commits) no changes added to commit (use "git add" and/or "git commit -a") 1. 2. 3. 4. 5. 6. 7. 8. 本地提交与远端合并代码 接下来对本地的 subrepo 做一次提交,接着对远端的子模块也做一次提交。然后更新子模块。可能会运行 git submodule update --remote,此命令...
new file: .gitmodules new file: submodule_subdir 可见在添加子模块后,主项目下需要将子项目信息提交一次,提交后,在主项目仓库中,会显示出子模块文件夹,并附带其所在仓库的版本号,如:submodule_subdir @ abcd1234。 git add -u git commit -m "add submodule" ...
git Submodule 是一个很好的多项目使用共同类库的工具,他允许类库项目做为repository,子项目做为一个单独的git项目存在父项目中,子项目可以有自己的独立的commit,push,pull。而父项目以Submodule的形式包含子项目,父项目可以指定子项目header,父项目中会的提交信息包含Submodule的信息,再clone父项目的时候可以把Submodule...
git submodule deinit usr/plugins/BaiduSubmit # 此时.git/config 已被重写,BaiduSubmit的相关信息已经不存在了 git rm usr/plugins/BaiduSubmit # 这时,子模块文件被删除,同时.gitmodules 文件中的相关信息被删除 # 还有一种情况,就是子模块刚被add,但是还没有commit的时候,这时如果反悔了,但是还想保留工作现场,可...
git submodule init git submodule update# 或者将上面的两条合成一步来使用git submodule update --init...
文艺程序员,使用Git Submodule功能,执行:git submodule update,然后冲一杯咖啡悠哉的享受着。 引用一段《Git权威指南》的话: 项目的版本库在某些情况虾需要引用其他版本库中的文件,例如公司积累了一套常用的函数库,被多个项目调用,显然这个函数库的代码不能直接放到某个项目的代码中,而是要独立为一个代码库,那么其...