git Submodule 是一个很好的多项目使用共同类库的工具,他允许类库项目做为repository,子项目做为一个单独的git项目存在父项目中,子项目可以有自己的独立的commit,push,pull。而父项目以Submodule的形式包含子项目,父项目可以指定子项目header,父项目中会的提交信息包含Submodule的信息,再clone父项目的时候可以把Submodule...
记录引用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保持一致。
git submodule add <url> <path> 其中,url为子模块的路径,path为该子模块存储的目录路径。 执行成功后,git status会看到项目中修改了.gitmodules,并增加了一个新文件(为刚刚添加的路径) git diff--cached查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要 git commit提交即完成子模块的添加 ...
而submodules只在主repo里存放所有子模块“索引”(repo url + branch name + commit hash),例如: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 #主repo的.gitmodules文件 [submodule "react-dom"] path = packages/react-dom url = https://github.com/facebook/react.git branch = master [submodule...
git diff --cached查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要 git commit提交即完成子模块的添加 子模块的使用 克隆项目后,默认子模块目录下无任何内容。需要在项目根目录执行如下命令完成子模块的下载: git submodule init git submodule update ...
这就加好了,可以注意到.gitmodules中的记录会动态地在改变。 如果我们想使用子目录中的某一个版本,直接跳到该子目录,切出该版本,然后在主目录中再次提交即可: cd 3rdparty/cutlass_fpA_intB_gemm git checkout 390e821f cd ../../ git commit -m "udpate submodule hash."编辑...
git submodule add <url> <path> 其中,url为子模块的路径,path为该子模块存储的目录路径。 执行成功后,git status会看到项目中修改了.gitmodules,并增加了一个新文件(为刚刚添加的路径) git diff --cached查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要 ...
在project1中push之后其实就是更新了引用的commit id,然后project1-b在clone的时候获取到了submodule的commit id,然后当执行git submodule update的时候git就根据gitlink获取submodule的commit id,最后获取submodule的文件,所以clone之后不在任何分支上;但是master分支的commit id和HEAD保持一致。 查看~/submd/ws/project1...
get_submodule_config () { name="$1" option="$2" default="$3" value=$(git config submodule."$name"."$option") if test -z "$value" then value=$(git config -f .gitmodules submodule."$name"."$option") fi printf '%s' "${value:-$default}" ...
git ${wt_prefix:+-C "$wt_prefix"} ${prefix:+--super-prefix "$prefix"} submodule--helper set-url ${GIT_QUIET:+--quiet} -- "$@" } # # Show commit summary for submodules in index or working tree # # If '--cached' is given, show summary between index and given commit...