下载git官网https://git-scm.com/
然后点击图片红箭头位置下载。
然后进行傻瓜式安装,安装之后单击左键会出现
Git GUI Here、Git Bash here。
1. 简单配置:
git config --global --list
可以看一下user.email和user.name的配置,
如果没有显示,可以对其进行设置。
git config --global user.name ''你所需要设置的名字",
git config --global user.email ‘‘你所需要设置的邮箱’’
2. 建立Git仓库
已有文件的时候 直接进入该文件夹 cd file_file_folder然后执行在Git Bash here中执行git init
没有文件的时候进入一个文件夹然后在Git Bash here中执行 git init “你所设置的文件夹” 那么就会创建该文件夹并且会有.git文件,这就完成了。
3. 配置Local信息
缺省等于local
$ git config --local local只对仓库有效
$ git config --global global对登陆用户所有的仓库
$ git config --system system对系统的所有用户有效
优先级 local>global>system
如下图所示:
4. Git 提交版本
git add file //会提交到暂存区间,但还未真正提交
git add . //把现在文件夹下的所有文件进行提交
git commit -m ‘‘提交信息’’
git log //查看提交的日志信息
如图所示:
5. 版本状态查看
git status
git status -s
git status --short
首先对其文件readme.txt进行修改,但不提交。他会提示已修改但是没有add,并且modified是红的
查看它会显示:
然后对其提交再查看它。modified变成绿的,然后说其以提交。
6. 查看历史版本
git log //最简单的使用
git log --pretty=oneline //只显示一行
git log -p // 显示版本之间的差别
git log -5 //显示最近5个版本
git log -5 -p //显示最近5个版本的差别
git log --stat // 查看大体的统计信息
7. .gitinore 忽略文件
如果有哪些内容或者文件不想加入到git版本控制器中,可以将其加入到.gitinore文件中
#注释
glob 模式匹配 //与正则很相似
- 星号,匹配0或者任意字符
【abc】,任何一个再括号内的字符
【0-9】,0-9的字符
?匹配一个任意的字符
/结尾指定目录
!取反
8. git diff 版本控制
对目前已存在git中的文件的修改并且还没有添加到暂存空间之前(也就是git add),可以对其使用git diff来查看现在的版本对之前的版本有啥区别
如果执行add之后,将其添加到缓存区间之后,再git diff就无法显示其区别。
git diff 老版本 新版本
git diff --staged //表示是添加到暂存空间内容发生的变化
9. git rm 删除文件
git restore fileName//删除修改的文件, 没有添加到暂存区域的。
git restore --staged fileName//删除已经添加到了暂存空间的内容,但是源文件中的内容还未被删除。如需要删除,需要执行git restore fileName命令。
git rm fileName //将其从版本控制器中删除,永久删除
git rm --cached file//将其从版本控制器中删除,但是源文件还保存再本地
git rm *.pyc//匹配文件,会将匹配到的文件全部删除
删除之后要记的提交,还要执行git commit -m ‘‘删除文件’’
10. 移动文件
git mv 老文件 新文件名
等价与
mv 老文件名 新文件名
git rm 老文件名
git add 新文件名
记得提交。
11版本补录
git commit --amend -a//添加到最新的版本里面
12. 标签
git tag -a tagname -m ‘‘提交信息’’
eg:git tag -a v1.0 -m ‘‘打标签v1.0’’
git tag tagname 轻量标签
git tag -a tagname 补录标签
git show tagname
git tag
git处理乱码
set LESSCHARSET=utf-8
git reset
--soft – 缓存区和工作目录都不会被改变
--mixed – 默认选项。缓存区和你指定的提交同步,但工作目录不受影响
--hard – 缓存区和工作目录都同步到你指定的提交