创建一个版本库:
1.在合适的盘中新建一个文件夹,点进文件夹,右键选择‘git bash here’,由此打开了Git窗口,并Git位置在该文件目录下;
2.Git窗口输入:
git init
添加文件:
1.在该目录下创建一个代码文件,里面写一段代码;
2.Git窗口输入:
git add test01.py
//同时添加两个文件
git add 1.py 3.py
//如果想一次性添加该目录下所有文件和文件夹,输入:
git add .
查看版本库状态:
git status
提交文件:
git commit -m <message>
git commit --amend
# 把文件和上次提交合并,
# 输入字母 c 可以进入编辑状态,可以修改注释信息,
# 修改完之后按esc键退出编辑状态,再按两次大写Z就保存退出vim编辑器
查看修改日志:
git log
//如果嫌输出信息太多,看得眼花缭乱的,可以输入:
git log --pretty=oneline
查看目录下所有文件:
ls -ah
查看具体修改的内容:
git diff test01.txt
返回过去和重返未来:
//先查看修改日志
git log
//返回过去
git reset --hard HEAD^ //返回上一个版本
git reset --hard HEAD^^ //返回上两个版本
git reset --hard HEAD~100 //返回上100个版本
git reset --hard commit_id //根据日志ID返回对应版本 ,版本号没必要写全,前5位就可以了
//重回未来
//你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办?
git reflog //用来记录你的每一次命令
git reset --hard commit_id //再根据日志ID返回对应版本
撤销修改:
git checkout -- readme.txt //总之,就是让这个文件回到最近一次git commit或git add时的状态。
//如果你的修改已经git add到暂存区了
git reset HEAD readme.txt //可以把暂存区的修改撤销掉,重新放回工作区
git checkout -- readme.txt //再删除工作区的修改
//场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
//场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。
//场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
从版本库中删除文件或恢复版本库文件到工作区:
//当工作区的文件被删除后,不代表版本库的文件被删,现在你有两个选择
//1.版本库文件也删除
git rm test.txt
git commit -m "remove test.txt"
//2.从版本库恢复到工作区
git checkout -- test.txt
//其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”,但你只能恢复文件到最新版本
//如果执行完git commit -m "remove test.txt"后就不能用checkout恢复了,得用git reset --hard HEAD^
//其实只要你用了Git,无论怎么搞,你都可以找回曾经的任何一个版本的文件,只要你记住那个ID