关于更多的应用操作
git init //在当前文件夹下生成代码仓库
git add 和git commit的区分
add 操作是想暂留当前文件,commit是将所有暂存文件录入和备份
git commit //不加参数。之后会显示信息编辑,建议格式为 修改文件 空行 修改原因 ;若不填写则为终止提交
git log 查看所有日志
git log --pretty=short 只显示每次改动的第一行信息
git log -p 所有文件的前后改动
git log -p 文件名
git log --graph 以图表形式查看日志
git diff 查看工作区和暂存区的区别
git diff head 若文件已经暂存,可以通过这句来查看前后两次暂存提交内容的区别
分支结构
git branch 查看所有分支和当前工作分支
git checkout -b 分支名称 //创建并且转到分支上
等价于
git branch 分支名称 + git checkout 分支名称
git checkout - 返回上次切换的分支
git merge 'feature_name'; 合并分支
版本控制
git reset --hard 哈希值 //回溯历史版本
git reflog //查看仓库的操作日志,回溯历史之前的哈希值
在回溯版本的时候一定要确定当前的作用分支区域
合并冲突
合并冲突其实就是在多个特性分支进行合并的过程。
在冲突文件中进行合并修改操作
但是在实际开发中,一般只会选取同一特性的一个选择。
git commit --amend //可以修改提交信息
历史压缩
在修正并且提交修改之后,可以通过
git rebase -i HEAD~2 //通过命令选定当前分支中包含(head)最新提交在内的两个最新历史记录为对象,并在编辑器中打开
通过修改pick 关键字为 fixup关键字 可以合并历史,此为良性历史修改