总是记不住命令,每次都要搜索。自己记录一下,方便查找。
git reset
将本地仓库恢复至指定 commit 的状态。 commit 记录和文件都会丢失。
|
|
将本地仓库恢复到 git add
之前的状态。
修改的内容会保留在工作区中。
恢复到 git commit
之前(即 git add
之后)的状态。
即修改的内容被暂存,但未提交。
|
|
git pull
从远程获取分支,并且与本地分支合并
简单来说,git pull
相当于 git fetch
+ git merge
(实际上有差别)。
以下两个命令等效(默认设置下),拉取 origin
并合并
拉取远程仓库的 main
分支,并与当前分支合并
|
|
拉取远程仓库的 main
分支,并与本地的 dev
分支合并
|
|
git remote
管理远程分支
添加一个名为 uptream
的远程分支
|
|
将名为 uptream
的远程分支改名为 down
|
|
删除名为 down
的远程分支
|
|
git submodule
删除子模块
网上很多文章写的 要删除这个文件、编辑那个文件,把步骤搞得很复杂。 其实并不需要,实际上只需要三步。
取消注册子模块
1
git submodule deinit submodulePath
此时,子模块从你的工作区以及
.git/config
中移除了,并未从配置中移除。 此时可以通过git submodule init
,git submodule update
重新加载子模块.从工作区和暂存区删除子模块
1
git rm -r submodulePath
此命令会同步删除
.gitmodules
内的相应内容.删除
.git/modules/
内的相应内容
增加子模块
|
|
这时会增加子模块的配置,以及克隆子模块到本地。
加载子模块
克隆父仓库时是不会加载子模块的,一般需要手动加载。
更新子模块
当子模块有更新,需要更新时,可以进入子模块目录中,手动 git pull
拉去更新。
或者,git submodule foreach
为所有子模块执行命令。
|
|
编辑子模块
子模块实际上就是一个完整的仓库。进入子模块的目录,按照正常流程操作即可。