去年学习Github的时候,一头雾水,经过一年的修炼,今日重新看时,感觉能看懂了,惊了,话不多说,走嘞。
一.建一个本地仓库
在计算机上找一个属于Github的文件夹,建立一个仓库
mkdir learngit
//新建一个learngit的文件夹
cd learngit//进入learngit文件夹
(为了避免错误,目录名字不要出先中文)
pwd//可以查看现在所在的位置
git init
//使这个目录变成Github可以管理的仓库
//若出现类似这样的,说明成功
//Initialized empty Git repository in D:/github/learngit/.git/
//已完成Git空仓库的初始化
在learngit的文件夹下有一个.git的文件夹(目录),这个目录是Git用来跟踪管理仓库的,不要乱改里面的东西。用ls发现看不见.git文件夹,因为这个文件夹默认是隐藏的 ,需要用ls -ah命令才能看见。
(在此目录下,手动创建了一个readme.txt文件,内容为 Andy is the master)
现在试图将readme.txt文件传入仓库中
//在此目录下,手动创建了一个readme.txt文件,内容为 Andy is the master
git add readme.txt
//将文件添加到仓库
git commit -m "wrote a readme file"
//将文件提交给仓库,m 为message的意思,后面跟的字符串语句为对本次提交文件的说明语句
除了添加一条提交一条,还可以添加多条,一起提交
//在learngit文件夹里放入img_1.jpg文件
git add readme.txt img_1.jpg
git commit -m "add two files"
//修改了readme.txt,添加语句 This is the second change
//重新添加并提交
git log
//查看历史记录
如果嫌显示太多可写成
git log --pretty=oneline
//机智点,给我显示成一行
可以看出最近一次提交的时候为change readme.txt
前面的一大段数字英文混合编码为commit id(版本号)id不是1,2,3。。这样是因为如果将来有多个人一块做一个项目,很渴能出现id冲突,所以
//将readme.txt回退到上一个版本
git reset --hard HEAD^
//回退到上上个版本
git reset --hard HEAD^^
//回退到前面上几个版本就有几个^
//回退到上多个(eg:100)版本也可以这么写
git reset --hard HEAD~100
//也可以通过版本号进行回退
git reset --hard f745
//版本号不用写全,写几位就行,只要Git能认得就行
//如果想要回退更新前的到版本,通过Head方法已经查不到了,只能调用
git reflog
//用来记录每一次命令,再通过版本号进行回退
git reset --hard f745
参考:
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000