Git权威指南 读书笔记一

查看版本: $git --version

颜色 $git config --global color.ui true

创建目录:

$cd /path/to/my/workspace

$mkdir demo

$cd demo

$git mit

或:

$cd /path/to/my/workspace

$git init demo

$cd demo

git目录即Git版本库,又叫仓库 respsitory

版本库所在的目录称为工作区

创建文档:$echo "Hello" > welcome.txt

添加到版本库:$git add welcome.txt

提交:$git commit -m "initalized

通过"-m" 参数设置提交说明 initiallized

搜索工作区的文件内容:

$git grep "……"

$git status

$strace -c 'trace=file' git status

追踪执行status命令时的磁盘访问

清除工作区当前的改动:$git dean -fd

用缓存区内容刷新工作区:$git check out

git write-tree 的输出就是写入Git对象库中的Tree ID

git ls -tree -l ID 随便写

git diff:工作区与index(暂存区)

git diff HEAD/master 工作区与master

git diff --cached /---cached HEAD 暂存区与HEAD

不可使用 git commit -a

git status 查看当前状态

git stash 保存当前的工作进度

git log -l --pretty=raw

commit HASHID 本次提交的唯一标识

tree SHAI ID 本次提交所对应的目录树

parent SHA ID 本次提交的上一次提交(父提交)

$git cat-file -t ID 可查看的ID类型

$git cat-file -p ID 查看文件信息

$继续可得到文件类型和内容

查看对象在对象库中的实际位置

$for id in commit ID tree ID parent ID blop ID;do\

ls .git/objects/${id:0:2}/$(id:2)*;done

$git status -s -b

$git branch 显示当前的工作分支

$git log -l HEAD

$git log -l master

$git log -l refs/heads/master

$find .git -name HEAD -o -name master

目录:.git/refs 是保存引用的命名空间

其中:.git/refs/heads 目录下的引用又称为分支

git rev-parse 可以用于显示引用对应的提交ID

Linux下使用$printf Git|sha|sum 生成摘要

使用$git cat-file commit HEAD 查看HEAD对应提交的内容

$git rev-parse HEAD 查看哈希值

查看版本库中文件内容:$git cat-file blob HEAD :文件全名

查看文件内容的字节数:$git cat-file blob HAED : 文件名.|wc -c

HEAD 对应的树的内容字节数:HEAD^(tree)

$git reset ---hard HEAD^(HASH ID) 将master重置到一个老提交上

$cat "文件名" 查看文件

$git config core .logallrefupdates

$tail -s .git/logs/refs/heads/master

$git reflog show master|head -s

git reset

用法一: git reset [-q] [<commit>][--] <path> ……

用法二:git reset [--soft|--mixed|--hard|--merge|keep] [-q] [<commit>]

用法一不会重置引用,更不会改变工作区,而是用指定提交状态<commit> 下的文件<paths> 替换掉暂存区的文件

用法二会重置引用

使用参数hard 会替换引用指向,暂存区,工作区

使用参数soft仅改变引用指向

使用mixed或不使用参数不改变工作区

 

git checkout 检出命令

修改HEAD 本身的指向,该命令不会影响分支游标

用法一:git checkout [-q] [<commit>] [--] <paths> -....

用法二:git checkout [<branch>]

用法三:git checkout [-m] [[-b] --orphan] <new_branch>] [<start point>]

git stash 命令

$git stash list 查看保存的进度

$git stash pop 从最近保存的进度进行恢复

$git commit -m "  " 从当前暂存区状态进行提交

$git reset -soft HEAD^ 放弃最新的提交

$git clean -nd -fd 删除本地多余的目录与文件,fd是强制删除

$git stash 保存当前的工作进度

$git stash list 显示进度列表

$git stash pop [--index] [<stash>]无参数则会恢复最新的工作进度,并将恢复的工作进度从存储的工作进度列表中清除

使用<stash> 则从该stash中恢复,恢复完毕后从列表删除

--index 除恢复工作区文件外,亦恢复暂存区

$git stash [save [--patch] [-k] --[no - ] keep -index] [-q|--quiet] [<message>]

--patch 显示工作区和HEAD的差异

使用--keep -index 或-k参数,在保存进度后不会将暂存区重置,默认会强制重置暂存区与工作区

$git stash apply [--index] [<status>] 不删除恢复的进度,同pop

$git stash drop [<stash>] 删除一个存储的进度,默认删除最新的

$git stash clear 删除所有的存储进度

$git stash branch <name> <stash> 基于进度创建分支

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值