修改提交备注信息
git commit --amend -m "message"
git使用远端仓库文件更新本地文件,先fetch, 然后checkout
git fetch
git checkout origin/master -- path/to/file
rebase
git checkout master
git rebase develop # master 分支基于develop rebase
git rebase -i <commit_hash> # 交互模式,可以合并多次的提交, https://juejin.im/entry/5ae9706d51882567327809d0
$ git tag -a v2.1.0 -m "xyz feature is released in this tag." # git tag v2.0, -a to create annotated tag
$ git tag
v1.0.0
v2.0.0
v2.1.0
git push origin v1.0.3
git push --tags
commit后回退
git reset --hard commit_sha
撤销未提交的合并
git reset --merge ORIG_HEAD
git add -A # stages all changes
git add . # stages new files and modifications, without deletions
git add -u # stages modifications and deletions, without new files, 添加所有修改,不包含新文件
# git add -A is equivalent to git add .; git add -u.
git submodule add <子module的git地址> : 从远程仓库将子module导入到该项目中,这时候会自动生成.gitmodules文件。
git submodule add <子module的git地址> <主项目内的文件夹>: 从远程仓库将子module导入到该项目中的特定文件夹中。
git submodule init:初始化本地.gitmodules文件。
git submodule update:在父项目中更新子module的修改。
git submodule foreach git pull:拉取所有子模块。
git submodule foreach git submodule update:如果你的submodule又依赖了submodule,可以使用git submodule foreach命令来实现一次性全更新。
git clone --recurse-submodules <主项目仓库地址>:获取主项目和所有子项目源码【git pull <主项目仓库地址>的时候不会同时获取submodules的源码】。
git submodule add <仓库地址>
git submodule update --remote
提示:如果您想要检出一个远程跟踪分支,例如在 'origin' 上的,您可以使用分支
提示:全名和 --track 选项:
提示:
提示: git checkout --track origin/<名称>
提示:
提示:如果您总是喜欢使用模糊的简短分支名 <名称>,而不喜欢如 'origin' 的远程
提示:名称,可以在配置中设置 checkout.defaultRemote=origin。
https://stackoverflow.com/questions/572549/difference-between-git-add-a-and-git-add
https://blog.csdn.net/www1575066083/article/details/103904660