zoukankan      html  css  js  c++  java
  • git用法

    chapter: 8 add 添加文件内容至索引

    用法: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      检查在演习模式下文件(即使不存在)是否被忽略
    

    chapter: 9 bisect 通过二分查找定位引入 bug 的变更

    usage: git bisect [help|start|bad|good|skip|next|reset|visualize|replay|log|run]

    git bisect help
            print this long help message.
    git bisect start [--no-checkout] [<bad> [<good>...]] [--] [<pathspec>...]
            reset bisect state and start bisection.
    git bisect bad [<rev>]
            mark <rev> a known-bad revision.
    git bisect good [<rev>...]
            mark <rev>... known-good revisions.
    git bisect skip [(<rev>|<range>)...]
            mark <rev>... untestable revisions.
    git bisect next
            find next bisection to test and check it out.
    git bisect reset [<commit>]
            finish bisection search and go back to commit.
    git bisect visualize
            show bisect status in gitk.
    git bisect replay <logfile>
            replay bisection log.
    git bisect log
            show bisect log.
    git bisect run <cmd>...
            use <cmd>... to automatically bisect.
    
    Please use "git help bisect" to get the full man page.
    

    chapter: 10 branch 列出、创建或删除分支

    用法: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
    change the upstream info
    --unset-upstream Unset the upstream info
    --color[=<何时>] 使用彩色输出
    -r, --remotes 作用于远程跟踪分支
    --contains <提交> 只打印包含该提交的分支
    --abbrev[=] 用 位数字显示 SHA-1 哈希值

    具体的 git-branch 动作:
    -a, --all 列出远程跟踪及本地分支
    -d, --delete 删除完全合并的分支
    -D 删除分支(即使没有合并)
    -m, --move 移动/重命名一个分支,以及它的引用日志
    -M 移动/重命名一个分支,即使目标已存在
    --list 列出分支名
    -l, --create-reflog 创建分支的引用日志
    --edit-description 标记分支的描述
    -f, --force 强制创建(当已经存在)
    --no-merged <提交> 只打印没有合并的分支
    --merged <提交> 只打印合并的分支
    --column[=<风格>] 以列的方式显示分支

    chapter: 11 checkout 检出一个分支或路径到工作区

    用法:git checkout [选项] <分支>
    或:git checkout [选项] [<分支>] -- <文件>...

    -q, --quiet           不显示进度报告
    -b <分支>             创建并检出一个新的分支
    -B <分支>             创建/重置并检出一个分支
    -l                    为新的分支创建引用日志
    --detach              成为指向该提交的分离头指针
    -t, --track           为新的分支设置上游信息
    --orphan <新分支>     新的没有父提交的分支
    -2, --ours            对尚未合并的文件检出我们的版本
    -3, --theirs          对尚未合并的文件检出他们的版本
    -f, --force           强制检出(丢弃本地修改)
    -m, --merge           和新的分支执行三路合并
    --overwrite-ignore    更新忽略的文件(默认)
    --conflict <风格>     冲突输出风格(merge 或 diff3)
    -p, --patch           交互式挑选数据块
    --ignore-skip-worktree-bits
                          对路径不做稀疏检出的限制
    

    chapter: 12 clone 克隆一个版本库到一个新目录

    用法:git clone [选项] [--] <版本库> [<路径>]

    -v, --verbose         更加详细
    -q, --quiet           更加安静
    --progress            强制显示进度报告
    -n, --no-checkout     不创建一个检出
    --bare                创建一个裸版本库
    --mirror              创建一个镜像版本库(也是裸版本库)
    -l, --local           从本地版本库克隆
    --no-hardlinks        不使用本地硬链接,始终复制
    -s, --shared          设置为共享版本库
    --recursive           在克隆时初始化子模组
    --recurse-submodules  在克隆时初始化子模组
    --template <模板目录>
                          模板目录将被使用
    --reference <版本库>  引用版本库
    -o, --origin <名称>   使用<名称>而不是 'origin' 去跟踪上游
    -b, --branch <分支>   检出<分支>而不是远程HEAD
    -u, --upload-pack <路径>
                          远程 git-upload-pack 路径
    --depth <深度>        创建一个指定深度的浅克隆
    --single-branch       只克隆一个分支、HEAD 或 --branch
    --separate-git-dir <git目录>
                          git目录和工作区分离
    -c, --config <key=value>
                          在新版本库中设置配置信息
    

    chapter: 13 commit 记录变更到版本库

    用法:git commit [选项] [--] <路径匹配>...

    -q, --quiet           提交成功后不显示概述信息
    -v, --verbose         在提交说明模板里显示差异
    

    提交说明选项
    -F, --file <文件> 从文件中读取提交说明
    --author <作者> 提交时覆盖作者
    --date <日期> 提交时覆盖日期
    -m, --message <说明> 提交说明
    -c, --reedit-message <提交>
    重用并编辑指定提交的提交说明
    -C, --reuse-message <提交>
    重用指定提交的提交说明
    --fixup <提交> 使用 autosquash 格式的提交说明用以修正指定的提交
    --squash <提交> 使用 autosquash 格式的提交说明用以压缩至指定的提交
    --reset-author 现在将该提交的作者改为我(和 -C/-c/--amend 参数共用)
    -s, --signoff 添加 Signed-off-by: 签名
    -t, --template <文件>
    使用指定的模板文件
    -e, --edit 强制编辑提交
    --cleanup 设置如何删除提交说明里的空格和#注释
    --status 在提交说明模板里包含状态信息
    -S, --gpg-sign[=]
    GPG 提交签名

    提交内容选项
    -a, --all 提交所有改动的文件
    -i, --include 添加指定的文件到索引区等待提交
    --interactive 交互式添加文件
    -p, --patch 交互式添加变更
    -o, --only 只提交指定的文件
    -n, --no-verify 绕过 pre-commit 钩子
    --dry-run 显示将要提交的内容
    --short 以简洁的格式显示状态
    --branch 显示分支信息
    --porcelain 机器可读的输出
    --long 以长格式显示状态(默认)
    -z, --null 条目以NUL字符结尾
    --amend 修改先前的提交
    --no-post-rewrite 绕过 post-rewrite 钩子
    -u, --untracked-files[=<模式>]
    显示未跟踪的文件,“模式”的可选参数:all、normal、no。(默认:all)

    chapter: 14 diff 显示提交之间、提交和工作区之间等的差异

    usage: git diff [--no-index]

    chapter: 15 fetch 从另外一个版本库下载对象和引用

    用法:git fetch [<选项>] [<版本库> [<引用表达式>...]]
    或:git fetch [<选项>] <组>
    或:git fetch --multiple [<选项>] [(<版本库> | <组>)...]
    或:git fetch --all [<选项>]

    -v, --verbose         更加详细
    -q, --quiet           更加安静
    --all                 从所有的远程抓取
    -a, --append          追加到 .git/FETCH_HEAD 而不是覆盖它
    --upload-pack <路径>  上传包到远程的路径
    -f, --force           强制覆盖本地分支
    -m, --multiple        从多个远程抓取
    -t, --tags            抓取所有的 tags 和关联对象
    -n                    不抓取任何 tags (--no-tags)
    -p, --prune           清除远程已经不存在的分支的跟踪分支
    --recurse-submodules[=<on-demand>]
                          控制子模组的递归抓取
    --dry-run             演习
    -k, --keep            保持下载包
    -u, --update-head-ok  允许更新 HEAD 引用
    --progress            强制显示进度报告
    --depth <深度>        深化浅克隆的历史
    --unshallow           转换为一个完整的版本库
    

    chapter: 16 grep 输出和模式匹配的行

    用法:git grep [选项] [-e] <模式> [<修订>...] [[--] <路径>...]

    --cached              在索引区搜索而不是在工作区
    --no-index            在未被 git 管理的内容中查找
    --untracked           在跟踪和未跟踪的文件中搜索
    --exclude-standard    也在忽略的文件中搜索
    
    -v, --invert-match    显示未匹配的行
    -i, --ignore-case     不区分大小写匹配
    -w, --word-regexp     只在单词边界匹配模式
    -a, --text            把二进制文件当做文本处理
    -I                    不在二进制文件中匹配模式
    --max-depth <深度>    最多以指定的深度向下寻找
    
    -E, --extended-regexp
                          使用扩展的 POSIX 正则表达式
    -G, --basic-regexp    使用基本的 POSIX 正则表达式(默认)
    -F, --fixed-strings   把模式解析为固定的字符串
    -P, --perl-regexp     使用 Perl 兼容的正则表达式
    
    -n, --line-number     显示行号
    -h                    不显示文件名
    -H                    显示文件名
    --full-name           显示相对于顶级目录的文件名
    -l, --files-with-matches
                          只显示文件名而不显示匹配的行
    --name-only           和 --files-with-matches 同义
    -L, --files-without-match
                          只显示未匹配的文件名
    -z, --null            在文件名后输出 NUL 字符
    -c, --count           显示总匹配行数,而不显示匹配的行
    --color[=<何时>]      高亮显示匹配项
    --break               在不同文件的匹配项之间打印空行
    --heading             只在同一文件的匹配项的上面显示一次文件名
    
    -C, --context <n>     显示匹配项前后的 <n> 行上下文
    -B, --before-context <n>
                          显示匹配项前 <n> 行上下文
    -A, --after-context <n>
                          显示匹配项后 <n> 行上下文
    -数字                 快捷键 -C 数字
    -p, --show-function   在匹配的前面显示一行函数名
    -W, --function-context
                          显示所在函数的前后内容
    
    -f <文件>             从文件读取模式
    -e <模式>             匹配 <模式>
    --and                 组合用 -e 参数设定的模式
    --or                  
    --not                 
    (                     
    )                     
    -q, --quiet           不输出,而用退出码标识命中状态
    --all-match           只显示匹配所有模式的文件中的匹配
    
    -O, --open-files-in-pager[=<分页>]
                          分页显示匹配的文件
    --ext-grep            允许调用 grep(1)(本次构建忽略)
    

    chapter: 17 init 创建一个空的 Git 版本库或重新初始化一个已存在的版本库

    用法:git init [-q | --quiet] [--bare] [--template=<模板目录>] [--shared[=<权限>]] [目录]

    --template <模板目录>
                          模板目录将被使用
    --bare                创建一个裸版本库
    --shared[=<权限>]     指定 git 版本库是多个用户之间共享的
    -q, --quiet           保持安静
    --separate-git-dir <git目录>
                          git目录和工作区分离
    

    chapter: 18 log 显示提交日志

    用法:git log [] [] [[--] ...]
    or: git show [options]

  • 相关阅读:
    最小二乘法(转载)
    负反馈放大器电路(转载)
    串联谐振与并联谐振的区别_串联谐振与并联谐振产生谐振的条件(转载)
    运算放大器:虚短与虚断(转载)
    人物根据镜头方向旋转和移动
    浅析勒贝格积分的思想在数论函数求和中的应用
    一类巧妙利用利用分治的序列求值
    YAOI Round #1 (Div.2) 题解
    NOIP 2020 游记
    P4550 收集邮票 与 灵异的期望
  • 原文地址:https://www.cnblogs.com/luomgf/p/4942315.html
Copyright © 2011-2022 走看看