git submodule 指定commit 文心快码BaiduComate 在Git中,子模块(submodule)允许你将一个Git仓库作为另一个Git仓库的子目录进行管理,同时保持它们的版本控制独立。要指定Git子模块(submodule)的特定commit,你可以按照以下步骤操作: 1. 初始化并更新子模块 首先,你需要初始化并更新子模块。如果你刚克隆了一个包含
当我们更新子项目后,相当于是把主项目记录的 submodule 的 commit id 给更新了,需要提交下主项目的变更。 方法三,主项目执行git submodule update [submodule文件夹相对路径] 注意,这个方法会使 submodule 的分支处于主项目里指定的 commit id。可能并不是拉 submodule 的 master 最新代码。 所以,这种方法仅适用于,...
自己手动删除就好了。 git checkout 切换到指定 commit: git chekcout <commit> 1. HEAD 是一个指针,通常情况下,它指向当前所在分支,而分支又指向一个 commit 提交。HEAD 并不总指向一个分支,某些时候仅指向某个 commit 提交,这就形成 detached HEAD。 切换到 detached HEAD 状态时,会有一个警告。 提示我们可...
值得注意的是,此时主项目修改的是其依赖的子项目的版本,而非完整变更代码,即引用的子项目的commit id。 2.3.3 子项目远程更新,主项目已更新 commit id 此时在主项目中执行git pull后会自动同步主项目中的子项目commit id依赖,由于主项目已知子项目更新,只需要执行 submodule 更新命令便可将落后的子项目更新到指定...
方法一,先 clone 父项目,再初始化 submodule,最后更新 submodule。 初始化只需要做一次,之后每次只需要直接 update 即可,需要注意 submodule 默认是不在任何分支上的,它指向父项目存储的 submodule commit id。 git clone project.git project2 cd project2 git submodule init git submodule update 方法二,采用递归...
git commit -m "add submodule" git push origin master cd .. 使用git status可以看到多了两个需要提交的文件,其中.gitmodules指定submodule的主要信息,包括子模块的路径和地址信息,moduleA指定了子模块的commit id,使用git diff可以看到这两项的内容。这里需要指出父项目的git并不会记录submodule的文件变动,它是按...
git commit -m "add submodule" git push origin master cd .. 使用git status可以看到多了两个需要提交的文件,其中.gitmodules指定submodule的主要信息,包括子模块的路径和地址信息,moduleA指定了子模块的commit id,使用git diff可以看到这两项的内容。这里需要指出父项目的git并不会记录submodule的文件变动,它是按...
方法三,主项目执行 git submodule update [submodule文件夹相对路径] 注意,这个方法会使 submodule 的分支处于主项目里指定的 commit id。可能并不是拉 submodule 的 master 最新代码。 所以,这种方法仅适用于,当主仓库里记录的 submodule 的 commit id 已经是最新的(可能被其他同事提交过)。或者你期望 submodule 跟...
15. git cherry-pick [commit_id]:选择指定的提交,将其应用到当前分支。可以用于合并单个commit到其他分支。 这些是Git的常用命令,掌握了这些命令可以帮助开发者更好地使用Git进行代码管理和版本控制。 Git是目前最流行的分布式版本控制系统,而Git Submodule(Git子模块)是Git提供的一个用来管理嵌套在当前Git项目中的...