从廖老师网站上总结的Git笔记,对常见操作进行了总结。
完整笔记:Git操作
打印版笔记:Git操作.pdf
1. 创建版本库
GitBash中 cd 到需要作为版本库的目录,执行git init
,创建成功后会生成.git
文件夹
2. 添加文件到版本库
首先,文件必须放在在版本库对应的目录下,
添加文件到版本库步骤:
git add
文件.文件类型,将文件放进暂存区(暂存区,工作区概念详见第4小节)git commit -m “本次提交的说明”
,添加到版本库
备注:
git status
随时掌握工作状态,提示信息分析:
Changes to be committed
: 已进入暂存区,但还未提交到版本库,需要commit
Changes not staged for commit
:更改了,但是还未进入暂存区
Untracked files
:表示该文件还从来没有被添加进版本库
3. 版本回退
git log
显示从最近到最远的提交日志,git log --pretty=oneline
使每个日志单独成行。- git中,用
HEAD
表示当前版本 - 回退到上一个版本:
git reset --hard HEAD^
,一个“^”表示回退1个版本,“~100”回退100个版本。 - 返回新版本:
git reset --hard 新版本的Id
git reflog
查看命令历史,以便确定要回到未来的哪个版本
4. 工作区和暂存区
工作区:在电脑里能看到的目录; 版本库:在工作区有一个隐藏目录.git,是Git的版本库。 Git的版本库中存了很多东西,其中最重要的就是称为stage(或者称为index)的暂存区,还有Git自动创建的master,以及指向master的指针HEAD。
git diff HEAD -- readme.txt
命令可以查看工作区和版本库里面最新版本的区别- Git是跟踪修改的,而不是跟踪文件,每次修改,如果不用git add到暂存区,那就不会加入到commit中。
撤消修改
- 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
git checkout -- file
。 - 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令
git reset HEAD file
就回到了场景1,第二步按场景1操作。 - 已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
删除文件
- 提交到版本库的文件,可以先
rm file
删除文件 - 确实要从版本库中删除该文件,那就用命令
git rm file
删掉,并且git commit
- 另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本
git checkout -- file
备注:git checkout -- file
就是将版本库的文件替代工作区的文件
删除文件夹
git rm -rf 文件夹名
git add -A