命令行输入
git
git help
git help -a
即可得到以下信息:
用法:git [--version] [--help] [-C <path>] [-c name=value]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
最常用的 git 命令有:
add 添加文件内容至索引
bisect 通过二分查找定位引入 bug 的变更
branch 列出、创建或删除分支
checkout Switch branches or restore working tree files
clone 克隆一个版本库到一个新目录
commit 记录变更到版本库
diff 显示提交之间、提交和工作区之间等的差异
fetch 从另外一个版本库下载对象和引用
grep 输出和模式匹配的行
init 创建一个空的 Git 版本库或重新初始化一个已存在的版本库
log 显示提交日志
merge 合并两个或更多开发历史
mv 移动或重命名一个文件、目录或符号链接
pull 获取并整合另外的版本库或一个本地分支
push 更新远程引用和相关的对象
rebase 本地提交转移至更新后的上游分支中
reset 重置当前HEAD到指定状态
rm 从工作区和索引中删除文件
show 显示各种类型的对象
status 显示工作区状态
tag 创建、列出、删除或校验一个GPG签名的 tag 对象
命令 'git help -a' 和 'git help -g' 显示可用的子命令和一些概念帮助。
查看 'git help <命令>' 或 'git help <概念>' 以获取给定子命令或概念的
帮助。
如果想得到子命令的信息,输入
git 子命令 -h
例如:
git add -h
用法:git add [<选项>] [--] <路径规则>...
-n, --dry-run 演习
-v, --verbose 冗长输出
-i, --interactive 交互式拣选
-p, --patch 交互式挑选数据块
-e, --edit 编辑当前差异并应用
-f, --force 允许添加忽略的文件
-u, --update 更新已跟踪的文件
-N, --intent-to-add 只记录,该路径稍后再添加
-A, --all 添加所有改变的已跟踪文件和未跟踪文件
--ignore-removal 忽略工作区中移除的路径(和 --no-all 相同)
--refresh 不添加,只刷新索引
--ignore-errors 跳过因出错不能添加的文件
--ignore-missing 检查在演习模式下文件(即使不存在)是否被忽略
git branch -h
用法:git branch [<选项>] [-r | -a] [--merged | --no-merged]
或:git branch [<选项>] [-l] [-f] <分支名> [<起始点>]
或:git branch [<选项>] [-r] (-d | -D) <分支名>...
或:git branch [<选项>] (-m | -M) [<旧分支>] <新分支>
通用选项
-v, --verbose 显示哈希值和主题,若参数出现两次则显示上游分支
-q, --quiet 不显示信息
-t, --track 设置跟踪模式(参见 git-pull(1))
--set-upstream 改变上游信息
-u, --set-upstream-to <upstream>
change the upstream info
--unset-upstream Unset the upstream info
--color[=<何时>] 使用彩色输出
-r, --remotes 作用于远程跟踪分支
--contains <提交> 只打印包含该提交的分支
--abbrev[=<n>] 用 <n> 位数字显示 SHA-1 哈希值
具体的 git-branch 动作:
-a, --all 列出远程跟踪及本地分支
-d, --delete 删除完全合并的分支
-D 删除分支(即使没有合并)
-m, --move 移动/重命名一个分支,以及它的引用日志
-M 移动/重命名一个分支,即使目标已存在
--list 列出分支名
-l, --create-reflog 创建分支的引用日志
--edit-description 标记分支的描述
-f, --force 强制创建、移动/重命名、删除
--no-merged <提交> 只打印没有合并的分支
--merged <提交> 只打印合并的分支
--column[=<风格>] 以列的方式显示分支
解释一下git 子命令 -h
中的-h
:
其实子命令是没有-h命令的,如果有,那么请换个没有的,如-hhh,-ttt,-aaa等,也就是说我们就是要输入一个没有的参数,让git提示我们可以输入哪些参数,从而达到我们想要的效果。