当前位置:   article > 正文

Git(四)git添加、删除、修改、日志_git中添加更新日志

git中添加更新日志

一    删除

①  实验环境准备和说明

②  系统rm命令

  1. ++++++++++'实验思路'++++++++++
  2. rm'删除' --> '还原'
  3. 作用机理:只是删除'工作区'的内容,尚未将'变化'纳入暂存区

③  git rm命令

  1. 实际场景: 把'误删除'文件到'恢复过来'
  2. 实验思路: 'git rm' 删除 --> '还原'

③  rm和git rm辨析

  1. +++++++++++++++++'rm 命令'+++++++++++++++++
  2. 'linux 的 rm 命令' --> 只是删除'工作区'的文件,并'没有删除暂存区'的文件
  3. 还原:只需要丢弃'工作目录的变化'
  4. +++++++++++++++++'git rm 命令'+++++++++++++++++
  5. 1)删除'工作区'文件
  6. 2)并且将'这个状态变化<==>被删除文件的行为'放入暂存区
  7. 还原: 首先还原'暂存区'的变化,其次丢弃'工作区'的变化-->'需要两步'
  8. 注意: 'git rm'要删除的文件是'没有修改过'的,就是说和当前版本库文件的'内容相同'
  9. +++++++++++++++++'二者的等价行为'+++++++++++++++++
  10. git rm ceshi.txt '<==>' rm ceshi.txt && git rm --cached ceshi.txt

④  git rm 彻底删除工作区的文件

二    重命名

①  系统命令mv之后一次完整提交

需求: 一次'增加多个'文件  --> 'git add .' -->将当前目录和当前目录下'所有的变化文件'都纳入暂存区

②  系统命令mv之后进行还原

③  git mv 命令之后一次完整的提交

④  git mv 命令之后进行还原

⑤  二者的辨析

  1. mv 命令: 只是完成'工作目录中'的重命名
  2. git mv 命令: '首先'完成工作目录中的'重命名','其次'将变化提交到'暂存区'

三   修改提交信息

需求场景: 把'commit'提交信息'写错了-->error',提交之后'想修改'

①  错误方式

②  正确的方式

四   常用日志方式

①  默认行为

  1. git log'默认行为'会输出 -->'commit hash',、'author'' commit date''commit message'
  2. git log 会按'时间先后顺序'列出所有的提交,最近的更新'排在最上面'

 

②  --oneline

这个命令'简化'git log'默认的输出'-->仅仅输出'commit hash 前7个字符串''commit message'

③  --stat

  1. --stat: 是在git log'基础上'-->'输出文件增删改'的统计数据
  2. --stat 选项在'每次提交'的下面列出'所有被修改过'的文件、有'多少文件被修改了'以及被修改过的文件的'哪些行被移除'或是'添加'

④  -p

  1. -p: 控制输出每个commit'具体修改'的内容,输出的形式'以diff的形式'给出
  2. -p 或 --patch ,它会显示每次提交'所引入的差异'(按 '补丁' 的格式输出)

⑤  --author

--author用来'过滤commit' --> '限定'输出给定的'提交用户'

⑥  --after--before

  1. 场景: 限定'指定日期范围'log
  2. +++++++++++'某个日期之后'+++++++++++
  3. --since=<date>, --after=<date>
  4. Show commits more recent than a specific date.
  5. --until=<date>, --before=<date>
  6. Show commits older than a specific date.
  7. //查出 03.12-03.18 期间的提交
  8. git log --since="2018.03.12" --until="2018.03.18"

⑦  --pretty

  1. 功能: 这个选项可以使用不'同于默认格式'的方式展示提交历史
  2. 这个选项有一些'内建的子选项'供你使用
  3. 1)oneline 会将每个提交'放在一行'显示,在'浏览大量的提交时'非常有用 -->'一行情书版'
  4. 2)short,full 和 fuller 选项,它们'展示信息的格式基本一致',但是'详尽程度不一'
  5. +++++++++++'图文并茂'+++++++++++
  6. git log --graph --oneline --decorate
  7. –graph 选项会'绘制'一个 'ASCII 图像'来展示提交历史的'分支结构'
  8. –decorate 是用来可以显示出'指向提交的指针'的名字,也就是 'HEAD 指针', feature/test等分支名称,还有远程分支,标签等。

+++++++++"格式符说明"+++++++++

⑧  补充

  1. %Cred: 切换到'红色' -->'C --> change'
  2. %Cgreen: 切换到绿色
  3. %Cblue: 切换到蓝色
  4. %Creset: '重设颜色'
  5. %C(...): 制定颜色, as described in color.branch.* config option
  6. %n: '换行'
  7. %d: 'ref名称'
  8. +++++++++++'最佳实践'+++++++++++
  9. git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
  10. +++++++++++'别名的方式'+++++++++++
  11. git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/466653
推荐阅读
相关标签
  

闽ICP备14008679号