file.txt2.创建多层目录mkdir-pa/b/c3.比较文件区别写入文件diffname1.txtname2.txt>diff.txt4.恢复文件5.查看摸个文件的时间ls--full-time.git/index6查找文件:find目录-namemingzi1-o-namemingzi27.显示文件内容cat" />
文档库 最新最全的文档下载
当前位置:文档库 › git 读书笔记

git 读书笔记

1。写入内容到某个文件中 是一个崭新的文件 不是添加
echo "contest" > file.txt
2.创建多层目录
mkdir -p a/b/c
3.比较文件区别写入文件
diff name1.txt name2.txt > diff.txt
4.恢复文件
5.查看摸个文件的时间
ls --full-time .git/index

6 查找文件:find 目录 -name mingzi1 -o -name mingzi2
7.显示文件内容 cat
8.打印编码:printef GIt |sha1sum
9。添加文字到文件中 echo "文件" >> file name.txt
10.直接是哟cat 写文件 cat>filename <







git相关命令
1.git rev-parse 命令
git rev-parse --git-dir 查看.git 文件夹所在的目录
git rev-parse --show-toplevel 查看工作目录
git rev-parse --show-prefix 查看与工作目录的相对路径
git rev-parse --show-cdup 查看到工作目录的相对写法
git rev-parse master 查看分支引用

2.打开git配置文件所在位置的方法 和配置是 不同参数的区别
git config -e .git\config 当前库的配置
git config -e --global 全局配置\.gitconfig
git config -e --system 所有库都是相同的配置C:\Program Files (x86)\Git\etc\gitconfig
优先级为 本库,全局 ,系统
查询或设置的时候使用 git config section.key
查看或修改其他的配置文件$ GIT_CONFIG=test.ini git config -e
删除已经有的配置 git config --unset --global section.key


3.git commit --allow-empty -m ""
--allow-empty :允许提交修改过的文件
--amend :对上次提交进行修补
--reset-author:重置提交人员信息
完全的语句是:git commit --amend --allow-empty --reset-author


4.查看日志 git log -l --pretty=fuller /raw
日志查看文件变更的 git log --stat 精简显示$ git log --graph --oneline
精简模式查看变更 git status -s -b(显示分支)

5.git diff 工作区与暂存区的对比
git diff HEAD 工作区与库中的主干或分支做对比
git diff --cached/--staged 暂存区域版本库中的对比

6.git reset HEAD 操作:head的索引覆盖缓存区的索引 ,object的文件失去索引,效果是缓存区文件回到工作区
git rm --cached file 操作:直接删除object中的文件 ,git status时文件在缓存区中标注为删除 在次使用git reset HEAD可以起到废弃上次提交的作用
git checkout .或 git checkout --file 缓存区中的内容会完全覆盖工作区的内容,使得在提交后在修改的内容消失
git checkout HEAD . 或git checkout HEAD file 用版本库中的文件全部覆盖工作区和缓存区

7:查看HEAD的 文件树 git ls-tree -l HEAD
-l 显示文件 大小
清空没有被 git clean -fd
8 git stash 保存工作进度


9:查看提交信息的SHA1的代码类型 $ git cat-file -t 前几位
查看提交信息的SHA1的代码内容$ git cat-file -p 前几位
查看文件的具体位置 $ for id in 45e8fd(为commit的ID) ; do \ls .git/objects/${id:0:2}/${id:2}*;done
gi

t log --pretty=raw --graph 提交ID

10: 获取HEAD的集中方式 1.git log -l HEAD 2.git log -l master 3. git log -l refs/heads/master

查看当前库里面某个文件的内容 git cat-file blob 提交版本号:文件名 加上 |wc -c
11: 重置
硬重置 :git reset --hard 提交的版本/HEAD^ 几级就多少个 这个方法会丢失历史信息

12: 查看分支日志功能是否开启 git config core.logallrefupdates
查看最近的几条提交记录通过文件 $ tail -5 .git/logs/refs/heads/master
查看操作记录 $ git reflog show master | head -5
切换版本$ git reset --hard master@{2}
--soft 替换引用 引用只想新的Id ,暂存区和工作区不发生变化
--mixed 替换引用 引用只想新的Id ,替换暂存区,可以完成 回复将文件退出提交的操作 默认便是该选项
--hard 全部都替换 替换引用 替换暂存区,替换工作区的内容

13:git checkout commit《ID》--file checkout 默认恢复的基准目录是暂存区 在改使用方法中 将使用缓存区的东西重置
工作区的东西,达到取消add的操作 若是有ID值 则暂存区的东西也是会被覆盖的
git checkout branch 切换分支
git checkout/HEAD 汇总显示各个区域的差异
git checkout --file 使用暂存区的内容覆盖工作区
git checkout branch --file 使用某个版本的某个文件对本地工作区和暂存区进行覆盖

14 git stash 保存进度
git stash 保存进度,默认情况下工作区和缓存区都会被强制设置为HEAD所指的斑斑中
git stash list 查看进度保存列表
git stash pop [--index][]
恢复进度,会将进度列表中的进度记录删除掉,--index :试图恢复暂存区的内容,不写该配置不会恢复暂存区中的东西(原来在暂存区中的重新回 到工作区)
git stash [save [--patch] [-k | --[no]keep-index]][-q|--quiet][message]
保存的完整形式
--patch 显示工作区与head的差异
-k在保存进度的时候 不重置暂存区
git stash apply [--index][stash] 取出进度但是不删除进度记录
git stash dorp [stash]删除进度
git stash clear 删除所有进度记录
git stash branch [branchname] [stash] 基于进度创建分支

15 删除文件
git rm a,b,c,d 为文件名称
git ls-files --with-tree=HEAD^ 在原有版本中查看删除的文件列表
git cat-file -p HEAD^:filename 查看指定文件的内容
git add -u 提交所有在版本库中改动的文件
16 恢复文件
git cat-file -p HEAD~1:filename > filename 单个恢复误删的文件
git show HEAD`1:filename>filename 单个恢复误删的文件
git checkout 版本 --filename 获取某版本单个文件

17 移动文件 改名字
git mv filename newname 修改名字

18 里程碑 git tag
创建里程碑 : git tag -m "message" tagname
查看里程碑引用: ls .

git/refs/tags/tagname 可以查看到引用
获取引用对应的递交ID :git rev-parse /refs/tags/tagname
查看里程碑的列表:git describe
在某一个里程碑中查看日志 git log --decorate 版本号

19 添加文件
git add -u 被hea的掌控的文件修改了的提交
git add -i 有选着的提交
git add -A/. 全部提交
git add -a -m “”偷懒式的提交直接提交(现在的版本已经将这个方法干掉了)
20 忽略文件 cat > .gitignore <查看被忽略的元素 git status --ignored -s
添加一个呗忽略的文件 git add -f filename
忽略的写法和符号含义 ! 为不忽略, /filename 忽略改文件夹下名字是filename 的文件夹(子文件夹下的不算)
filename/ 目录下的所有文件
21 归档
基于最新的文件进行归档 git archive -o fliename.zip HEAD
基于最新的文件进行归档 git archive -o fliename.zip HEAD a b 为文件夹 只归档以下的文件夹
基于里程碑归档 git archive --format=tar --prefix=1.0 /v1.0 |gzip >>filename1.0-tar.gz

22。获取某个文件的历史版本
$ git log --pretty=oneline pom.xml
$ git reset 版本号 文件名



相关文档