常用的git命令
2020年04月07更新
删除子模块
1 | 逆初始化模块,其中{MOD_NAME}为模块目录,执行后可发现模块目录被清空,有时候需要加 -f参数 |
.gitmodules中子模块的url可以手动删除
2019年02月19日更新
git submodule 用于子模块的添加
使用场景,spax-launcher与spax-android许多相同的地方,一些类和工具方法可以抽取出来组成一个公共的模块
两个项目,共同使用
1.如何添加submodule
使用soursetree->仓库->添加子模块
填写仓库地址,和映射的目录即可
2.更新子模块代码和拉取代码
命令行模式
cd 到子模块目录,git checkout 子模块正常分支后,就可以正常的项目的git 操作
note:
在根目录下进行git 操作不影响子模块的代码,举个粒子:子模块代码有修改,在项目根目录git add ./ git commit 是不会把子模块的代码提交,必须cd到子模块目录下提交
3.原理猜测
每次提交/拉取子模块代码后,都会在根目录下spax-common文件中打上hash标签
1 | -Subproject commit 5d54b025712ef8eb579cf8633d4b584f449d005c |
| 功能 | 命令 |
|---|---|
| 删除tag | git push origin –delete tag |
| 删除分支 | git push origin –delete tag |
| 推送一个空tag/branch到远程tag/branch: | git push origin : |
| 删除分支(分支和tag名一致的情况) | git push origin :refs/tags/ |
| 推送所有tag | git push origin –tags |
| 重命名分支 | git branch -m |
| 推送重名后的分支 | git push origin |