Git是什么?
目前世界上最先进的分布式版本控制系统。
集中式和分布式?
集中式:CVS \ SVN 必须联网才能干活。
版本库集中在中央服务器:干活前要先从中央服务器取得最新的版本,干完了再提交给中央服务器。
分布式:Git 不需要联网
没有“中央服务器”,每个人电脑都是一个完整的版本库。
安装Git?
在官网下载安装程序 https://git-scm.com/downloads
安装完成后,设置用户名和Email地址
git config --global user.name "your name"
git config --global user.email "email@example.com"
创建版本库?
创建空目录:mkdir 目录名
进入到目录:cd 目录名
显示当前目录:pwd
目录变成Git仓库:git init
文件添加到仓库:git add 文件名
文件提交到仓库:git commit -m "提交说明"
查看仓库状态:git status
查看修改内容:git diff
版本回退?
显示提交日志:git log
显示简单日志:git log --pretty=oneline
当前版本:HEAD
上一个版本:HEAD^
上上个版本:HEAD^^
再上个版本:HEAD~100
回退上一个版本:git reset --hard HEAD^
回退到某个版本号:git reset --hard 版本号
查看历史命令记录:git reflog
工作区和暂存区
工作区:电脑里能看到的目录。
版本库:工作区里的隐藏目录.git(不算工作区)
暂存区:版本库中存的stage或者叫index
git add :把文件修改添加到暂存区;
git commit:把暂存区内容提交到当前分支;
撤销修改?
丢弃工作区修改:git checkout -- 文件名
1.还没放到暂存区,撤销修改回到和版本库一模一样的状态。
2.已经添加到暂存区,又作了修改,撤销修改回到添加到暂存区后的状态。
丢弃暂存区的修改:git reset HEAD 文件名,重新放回工作区。
删除文件?
删除文件:rm 文件名
确认删除文件:git rm 文件名 并提交 git commit -m "删除描述"
恢复误删文件:git check -- 文件名
注意:从来没有添加到版本库就被删除的文件,无法恢复
添加远程仓库?
本地库内容推送到远程:git push