文章目录
场景一:删除不需要的分支
现在我们有着这几个分支:
使用命令:
git branch -D/-d branch_name
现在再查看一下我们有几个分支:
场景二:修改最新commit的message
我们假设我们这个“add refer”写错了:
使用命令:
git commit --amend
将最上面一行的改成我们需要的改的message:
退出保存!
此时我们就可以看见已经成功修改:
场景三:修改老旧commit的message
这次我们想把”add js“改为”add a js file“
我们需要选择需要改变message的commit的父亲,也就是:
命令:
git rebase -i commit_id
此时会出现:
根据文档提示可以知道我们需要使用reword,之后如图所示:
保存之后git会自己出现一个文件:
此时将最上方的文字修改,保存,修改成功
场景四:怎么把连续的多个commit整理成一个
如何把这两个commit的整理为一个commit呢:
使用命令:
git rebase -i 父commit_Id
将需要合并的commit前的pick变为s,之后保存
可以为这次新的commit增添一个message:
保存!
场景五:怎么将不连续的commit整理成一个
合并这两个commit:
使用命令:
git rebase -i XXXXXX
之后跟场景四是一样的
场景六:比较暂存区与HEAD的差异git
修改index.html这个文件
加入到暂存区:
之后使用:
git diff --cached
场景七:比较工作区和暂存区的区别
diff命令默认就是比较工作区和暂存区的区别:
git diff
场景八: 让暂存区恢复成和HEAD的一样
命令:
git reset HEAD
场景九:工作区的文件恢复和暂存区的一样
命令:
git cheackout -- file_name
暂存区中的index文件:
工作区中的index文件,使用命令后发现无不相同
场景十:取消暂存区部分的文件更改
现在的状态:
我们想要把index.html给恢复
git reset HEAD -- index.html
场景十一:取消最近几次的提交
想要回到这个commit的状态:
使用命令:
git reset --hard commit_id
场景十一:查看不同提交的制定文件的差异
命令:
git diff master temp2 -- index.html
场景十二:删除文件
命令:
git rm file_name
场景十三:指定不需要git管理的文件
编写.gitignore文件,
文件内编写的是:
doc/