【LearnGit】
【LearnGit】
Kendal前博客误删了,重新搭了一个。date: 2024-09-11 22:22:44
开启长期写博客的第一篇,加油 本文学习均来自廖雪峰老师的Git教程,本博客只用于学习和知识点汇集。
1.什么是Git
分布式版本控制系统
1.1集中式与分布式
集中式:“中央服务器”、联网工作 分布式:每个人都有完整的版本库、安全性高
2.版本库
版本库又名仓库(Repository),在该目录下所有文件可以被Git管理起来
2.1创建版本库
$ mkdir learngit |
mkdir创建空目录、cd进入该目录、pwd显示当前目录
$ git init |
不要手动修改.git目录!
2.2提交文件
假如创建readme.txt文件
STEP 1
$ git add readme.txt |
执行命令,没有显示,则添加成功
STEP 2
$ git commit -m "wrote a readme file" |
-m后面为本次提交的说明
若命令执行成功:1 file changed:一个文件改动(本次提交了一个readme.txt文件)2 insertion:插入了两行内容(readme.txt文件有两行内容)
可以多次add文件,commit可以依次性提交
注意事项
错误:fatal: not a git repository (or any of the parent directories)。
Git命令要在Git仓库内执行
错误:fatal: pathspec 'readme.txt' did not match any files。
添加文件要在当前目录下存在,用ls或者dir命令查看当前目录文件是否存在,注意拼写
3.时光机穿梭
若我们修改了readme.txt文件:
$ git status |
查看仓库当前的状态,可通过其查看修改的文件
$ git diff |
查看修改的具体内容
修改后提交:步步检查
$ git add readme.txt |
3.1版本回退
$ git log |
git log命令可查看从最近到最远的提交日志,嫌输出信息太多,可加上命令--pretty=oneline
$ git log --pretty=oneline |
一大串数字是commit id的版本号
如何回退到上个版本?
在Git中,用HEAD表示当前版本,上一个版本是HEAD^,上上个版本就是HEAD^^,往前100个版本HEAD~100
回退到上一个版本可以用git reset命令
$ git reset --hard HEAD^ |
--hard可以退回到上个版本已提交状态,--soft回退上个版本未提交状态,--mixed回退上个版本已添加未提交状态
再次回到指定新版本
$ git reset --hard banbenhao |
版本号没必要写全,前几位即可,Git会自动寻找
再次查看readme.txt文件
$ cat readme.txt |
git reflog查看命令历史,确定未来版本号
$ git reflog |

