要验证子模块是否已切换到指定的commit,你可以在主项目目录中执行以下命令来查看子模块的状态: bash git submodule status 这将显示每个子模块当前的commit ID和路径。你可以核对这个commit ID是否与你指定的abc12345相匹配。 5. 推送更改到远程仓库 最后,不要忘记将主项目的更改推送到远程仓库: bash git push ori...
自己手动删除就好了。 git checkout 切换到指定 commit: git chekcout <commit> 1. HEAD 是一个指针,通常情况下,它指向当前所在分支,而分支又指向一个 commit 提交。HEAD 并不总指向一个分支,某些时候仅指向某个 commit 提交,这就形成 detached HEAD。 切换到 detached HEAD 状态时,会有一个警告。 提示我们可...
包含子模块的路径和 git 地址,moduleA 指定了子模块的 commit id,使用 git diff 可以看到这两项的内容。 这里需要指出父项目的 git 并不会记录 submodule 的文件变动,它是按照 commit id 指定 submodule moduleA 的 git header,所以 .gitmodules 和 moduleA 这两项是需要提交到父项目的远程仓库的。 On branch...
当我们更新子项目后,相当于是把主项目记录的 submodule 的 commit id 给更新了,需要提交下主项目的变更。 方法三,主项目执行git submodule update [submodule文件夹相对路径] 注意,这个方法会使 submodule 的分支处于主项目里指定的 commit id。可能并不是拉 submodule 的 master 最新代码。 所以,这种方法仅适用于,...
使用git status可以看到多了两个需要提交的文件,其中.gitmodules指定submodule的主要信息,包括子模块的路径和地址信息,moduleA指定了子模块的commit id,使用git diff可以看到这两项的内容。这里需要指出父项目的git并不会记录submodule的文件变动,它是按照commit id指定submodule的git header,所以.gitmodules和moduleA这两...
使用命令 git status 可以看到多了两个需要提交的文件,其中 .gitmodules 指定submodule 的主要信息,包括子模块的路径和地址信息,moduleA 指定了子模块的commit id,使用 git diff 可以看到这两项的内容。 然后和往常一样进行 add 和 commit 即可. 需要注意的是,父项目的 git 并不会记录 submodule 的文件变动,它...
2.3.3 子项目远程更新,主项目已更新 commit id 此时在主项目中执行git pull后会自动同步主项目中的子项目commit id依赖,由于主项目已知子项目更新,只需要执行 submodule 更新命令便可将落后的子项目更新到指定的版本。 代码语言:txt 复制 $ git submodule update ...
git Submodule是一个很好的多项目使用共同类库的工具,他允许类库项目做为repository,子项目做为一个单独的git项目存在父项目中,子项目可以有自己的独立的commit,push,pull。而父项目以Submodule的形式包含子项目,父项目可以指定子项目header,父项目中会的提交信息包含Submodule的信息,再clone父项目的时候可以把Submodule初...
git commit -m "init" git push // 模拟工程目录 git init --bare repository/prj.git git clone repository/prj.git prj/myprj // 指定路径的话会修改*.git原来目录的名称 cd prj/myprj/echo "" > "This is root project".txt目录结构:. |-- init | |-- submodule_A | `-- submodule_B |-...