认识git
•Git是一个“分布式版本管理工具”
版本管理工具: 大家在写东西的时候都用过“回撤”这个功能,但是回撤只能回撤几步,假如想要找回我三天之前的修改,光用“回撤”是找不回来的。而“版本管理工具”能记录每次的修改,只要提交到版本仓库,你就可以找到之前任何时刻的状态(文本状态)。
重要概念
•工作区:改动(增删文件和内容)
•暂存区:输入命令git add 改动的文件名,此次改动就放到了‘暂存区’
•本地仓库(简称:本地):输入命令git commit 此次修改的描述,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’。
•远程仓库(简称:远程):输入命令git push 远程仓库,此次改动就放到了‘远程仓库’(github等)
•commit-id:输出命令git log,最上面那行commit xxxxxx,后面的字符串就是commit-id
推荐实践网站
•Git在线实操练习
奇技淫巧
•参考:Git的奇技淫巧
1. 展示简化的commit历史
git log --pretty=oneline --graph --decorate --all
![5fdeac0fd8724eeb58ac09ea746671a0.png](https://i-blog.csdnimg.cn/blog_migrate/254313c7f4144c281745290de27478c3.png)
2. 文件删除
•当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用
git rm file_pathgit commit -m 'delete somefile'git push
•当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用
git rm --cached file_pathgit commit -m 'delete remote somefile'git push
3. 查看最近所有做过的操作
git reflog
![810e898b31a61f00a25d98e5c1bb2986.png](https://i-blog.csdnimg.cn/blog_migrate/b813974988371b1d42dcffc3ca6ed26f.png)
•回滚到之前做过的操作,根据 git reflog
显示的操作前的SHA值
git reset --hard 19eea92
3. 添加到暂存区
•git add .命令除了能够判断出当前目录(包括其子目录)所有被修改或者已删除的文档,还能判断用户所添加的新文档,并将其信息追加到索引中
git add .
4. 查看某一个分支的提交log
git log $分支名/tag名/远程分支名
5. patch相关信息
•git format-patch :
获得的patch包含commit里提交的