Git使用笔记
简介
本文参考了廖雪峰大神的Git教程 https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496
定义
用C语言编写的开源的分布式版本控制系统。
优点
1.没有“中央服务器”。每个人的电脑都是一个完整的版本库,无需联网,安全性高。
2.可记录每次文件的改动
3.可多人协作编辑
安装
- Git官网上即可下载 https://git-scm.com/downloads
- 在开始菜单栏找到"Git"->“Git Bash”,跳出类似命令行的窗口,说明安装成功(我已经装好就直接搬的廖大神的图)
- 最后再输入
$ git config --global user.name “Your Name”
$ git config --global user.email “email@example.com” 就好啦
注:用global参数表示我这台机器上的所有Git仓库都会使用这个配置
操作
增删改查
增
- mkdir learngit (新建一个文件夹)
- git init (把该目录变成Git可以管理的仓库)
- 在该仓库目录下新建一个文件
- 添加文件(可添加多个文件,一次commit)
git add readme.txt (把文件放入了暂存区)
git commit -m “wrote a readme file”(把提交到了分支上)
注:hhh,比作逛超市真的很形象。add相当于把东西放到购物车,commit相当于去付钱。(超小声bb…你总不能拿一样东西就去付钱吧)
删
- 删除工作区的文件
rm test.txt(删除)
git checkout test.txt(恢复)
- 彻底删除文件
rm test.txt
git rm test.txt (将暂存区的文件删掉)
git commit -m “remove test.txt”(将版本库的删掉)
改
修改该文件
- git add readme.txt (每次修改后都要重新add一次)
- git commit -m “add distributed”
查看修改
-
git status (是否被修改)
-
git diff readme.txt (比较工作目录下和暂存区快照之间的差异)
-
git log (查看历史记录)
改错了怎么办?
-
还没commit
- 只对文件修改了
git check – readme.txt(文件回到最近一次add/commit的状态)
注:你把进货的小本本上的货物价格弄错了,把小本本上的货物价格改回来就行了嘛
- 对文件修改而且add到暂存区
git reset HEAD readme.txt(将暂存区的修改撤销)
git check – readme.txt(将工作区的修改丢弃)
注:你不仅进货的小本本上的货物价格弄错了,货架上的价格标签也错了,先把货架上的价格改了,在回到小本本上把价格改回来,还好还好,保名狗头~
- 只对文件修改了
-
已经commit
-
回退到上一个commit的版本
git reset --hard HEAD^ -
去到任一版本
git reflog (找到 commitid )
git reset --hard commitid
注:你不仅进货的小本本上的货物价格弄错了,货架上的价格标签也错了,还输进了结账系统里em…那就只能回到上一次输进去的价格了.
-
查
cat readme.txt
Github
从Github上下载
git clone git@github.com:kumanmontt/Data-Analysis