当前位置: 首页 > 工具软件 > git-cc > 使用案例 >

git常用命令大全

何玺
2023-12-01

设置与配置

config和help,获取与创建项目,快照基础,分支与合并,分享与更新项目,检查与比较,调试,补丁,邮件,外部系统,管理.

命令作用意思等
git config用来配置,
git help用来显示命令文档,
git init新建
git clone复合命令,建目录+git init+git remote add(远端,origin)+git fetch+git checkout,--bare创建空仓,--recursive递归.
git add暂存,提交时,只检查暂存区,
git status展示工作区及暂存区中文件的不同状态.会显示如何在这些暂存区移动的提示.
git diff比较树差异时用.git diff --staged暂存与提交差异,两提交git diff 主 分支的差异.有--check选项,A...B三点差异,-b过滤空白,比较--theirs,--ours 和 --base三方.--submodule比较子模块.
git difftool外部工具比较
git commit提交,用-a跳过暂存,-m命令行而不是编辑器.用--amend来重做,-S为签名加密.
git reset撤销,用--hard(危险,有覆盖)改变工作区,移动HEAD,可选改变暂存,git merge --abort是其简单封装.
git rm工作区/暂存区移除文件,--cached只移除暂存区.有--ignore-unmatch等选项.
git mv新文件git add,旧文件git rm,类似重命名.
git clean从工作区中移除不想要文件的命令
git branch管理分支,可列出所有,创建新,删除及重命名分支.-u设置跟踪分支.
git checkout切换分支,用--track来跟踪,用--conflict=diff3来比较冲突.
git merge合并分支,用squashed merge合并多个而只提交1个,而不记录合并的分支的历史.-Xignore-space-change命令及--abort,合并前验证签名,及合并子树.
git mergetool外部合并工具
git log项目可达历史记录,默认显示当前.但可显示不同甚至多个头记录或分支来遍历.-p和--stat了解每一提交的变更,用--pretty和--online来简洁查看.--decorate可视化分支指针,--graph查看分支历史记录.A..B查看B有而A无的提交.A...B--left-right选项.用--merge帮助合并冲突,用--cc查看历史合并提交冲突,用-g查看引用日志,用-S及-L优雅搜索函数历史.--show-signature判断签名是否合法.
git stash隐藏,
git tag打标签,用于发布.-s创建GPG签名标签.-v来验证.
git fetch取到仓库,设置refspec引用规范.
git pullgit fetch+git merge,可处理变基.用--verify-signatures验证gpg签名.
git push推送,计算差异,推送至远端.通常要写/验证.用--delete删除远端分支.--tags分享标签,用--recurse-submodules检查是否都已推送.用pre-push检查是否允许推送.完整refspec(引用规范).
git remote管理远端仓库记录工具.允许网径映射为origin(等),可用来添加,修改,及删除它们.一般这样git remote add <名> <网径>用.
git archive创建归档文件.
git submodule管理外部仓库,子命令:add,update,sync来管理.
git show可读方式显示对象,显示标签或提交.有意思在:合并冲突时提取不同暂存区指定文件内容.
git shortlog归纳git log输出命令,展示根据作者分组的提交记录的概括性信息而不是列出所有提交.
git describe取可解析为提交的,生成不变串.取提交清晰描述,而非不可读sha1值.
git bisect二分查找有问题提交,
git blame标注文件行最后变更的作者/提交.
git grep查找串/正则式.
git cherry-pick单提交中引入的变更,只分支提交中仅取部分提交时有用.
git rebase变基,自动化的cherry-pick命令.--onto在之上变基.-i用于交互式脚本.注意合并冲突.
git revert反向git cherry-pick,撤销或逆转(恢复).
git apply应用git diff打的补丁.
git am邮箱,mbox格式,有--resolved,-i及-3等选项.
git format-patch格式化补丁,
git imap-sendgit format-patch生成邮箱上传至imap草稿文件夹.
git send-email发送git format-patch生成补丁.
git request-pull生成示例,
git svnsvn集成.
git fast-import转换格式为格式
git gc删除不需要文件,或打包小包为大包.
git fsck检查仓库问题,
git reflog分析头针日志来查找重写历史上可能丢失的提交
git filter-branch根据规则来重写大量的提交,过滤子目录.有--commit-filter,--subdirectory-filter及--tree-filter选项.

还有些底层命令,如ls-remote查看远端原始引用,ls-files查看暂存区,rev-parse接受转为sha1值.

 类似资料: