一、使用git的好处
a.项目未使用版本控制工具之前纯在的问题:
1.项目的安全性太低
2.项目的版本比较混乱
3.项目的无端报错
4.项目没办法做到协同开发
b.什么是git:
Git是分布式版本控制及协同开发工具
c.版本控制工具的分类:
1.集中式版本控制工具 cvs svn
2.分布式的版本控制工具 git
二、git的下载和安装
a.官网:从 http://msysgit.github.io/ 下载,然后按默认选项安装即可。
b.安装:
1.傻瓜式安装,一路下一步
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明 Git 安装
成功!
安装完成后,还需要最后一步设置,在命令行输入:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
因为 Git 是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和 Email 地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。
三 、版本库
1.创建版本库
找一个空的盘符在命令窗口输入以下命令就好
$ mkdir GitRepository #创建文件夹 文件夹就是版本库放的位置
如下图
接下来初始化版本库 把这和目录交给git去管理
$ git init
提醒一下大家这个.git文件夹大家不要去私自修改它。瞬间 Git 就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个.git
的目录,这个目录是 Git 来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把 Git 仓库给破坏了。
四、git简单的使用
1、创建文件夹
$ touch a. txt
第一步,用命令git add
告诉 Git,把文件添加到仓库:
$ git add a.txt
第二步,用命令git commit
告诉 Git,把文件提交到仓库:
-m是添加这次操作的描述,做了那些工作。
$ git commit -m "创建一个文件a.txt"
当使用git add命令是将数据添加到暂存区
使用git commit -m “本次提交说明”
才会把数据提交到本地库即 GitResponse
五、git的分区原理
上面估计有些小伙伴可能也看到了博主使用git status这个命令
这个命令就是查看文件状态的。
红色 工作区的已经修改未添加到暂存区
绿色 工作区已经提交到暂存区为添加到版本库
working tree clean 表示工作区与版本库一致
git status
命令可以让我们时刻掌握仓库当前的状态
六 git指令的简单使用
1、查看历史版本
$ git log
git log 命令显示从最近到最远的提交日志,我们可以看到 3 次提交,最近的一次是append GPL
,上一次是add distributed
,最早的一次是wrote a readme file
。 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline
参数:
$ git log --pretty=oneline
如下图大家体会下
使用 git log --pretty=oneline 这个命令明显比较简洁看起来更加舒服。
2、版本回退
如果我们想回退岛上一个版本呢?没问题,满足你。
$ git reset --hard HEAD^
$ git reset --hard HEAD^1~100
注意: git reset --hard HEAD^ //回退到上一个版本
^的个数决定回退到那个版本,不过这个很少用,一般用指定回到版本号的命令。
最新的那个版本append GPL
已经看不到了!好比你从 21 世纪坐时光穿梭机来到了 19 世纪,想再回去已经回不去了,肿么办?
办法其实还是有的,只要上面的命令行窗口还没有被关掉,你就可以顺着往上找啊找啊,找到那个append GPL
的commit id
是3628164...
,于是就可以指定回到未来的某个版本:
$ git reset --hard 3628164 // 举例
如下图所示:
3、查看历史命令
Git 提供了一个命令git reflog
用来记录你的每一次命令:
$ git reflog
4、撤销工作区修改
$ git checkout --e.txt
使用命令vi a.txt 可对a.txt进行编辑,加入内容。保存后,输入以上命令,但是用vi a.txt查看后a.txt恢复到了修改签的状态。
5、撤销暂存区的修改
$ git checkout -- a.txt //文件名
6、删除文件
一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用 rm 命令删了:
$ rm aaa.txt #删除文件
如果是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:
$ git checkout -- d.txt
7、删除文件
确实要从版本库中删除该文件,那就用命令git rm
删掉,并且git commit
:
$ git rm aaa.txt
$ git commit -m "确定删除文件"
七、github使用
1.注册账号
2.登陆账号
生成SSH key,在自己本机生成
$ ssh-keygen -t rsa -c "邮箱" //一开始输入的邮箱
查看SSH key
路径:C:\Users\Administrator.ssh
将公钥拿出来放入到github上,
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDOQUUlqCCekbZL/kxK4qq1/ymKcugHq+ma7/bi1L9opDuaL53rzmzmQo4uDqIY/bpSM2NioFaQpK1OBeM3VPZ0PP7nepcZrs/8/7R6iJxOe/3Cgn+YG+rZBWpjvrebpq4Z//R2mKkMViFRi9n2u9+jUKdH2DwAfFxVHfEY8fm2Kt/2eWa9s7IincNKHTAi4JDi/ToX0EhFsfaw7uYBKdw7yBOmt9aRbMWlBBIsjCGfp256K/bd18SGDezpnmCT3g1pjKgxkYQ+0qK/yPO3stYAY3clTFhR3oh9prVRMNXGJZ9+2nTdxX5H4pRgTP0wZWf59ThUbqa1TGk+sxWgvEOV 15236674712@163.com
添加gitHub的信任列表
Settings -->SSH and GPG keys -->New SSH key
在GitHub上创建仓库
your reposities --> new
将GitHub上的仓库拉到本地
$ git clone git@github.com:15236674712/cmfz-158.git //新建项目的地址
将本地的版本库推到GitHub
$ git add a.txt
$ git commit -m "描述信息"
$ git push origin
将GitHub上的更新更新到本地
$ git pull origin
八、将本地项目交由Git管理并且推送至远程仓库
1、向将项目初始化为Git仓库
$ git init
$ git add .
$ git commit -m "添加项目"
添加忽略提交文件的配置
命名为 .gitignore
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**
!**/src/test/**
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
### VS Code ###
.vscode/
2、在GitHub上创建一个空的项目
记得点初始化这个仓库的选项。
3.与GitHub从仓库建立远程连接
$ git remote add origin git@github.com:15236674712/maven_day1.git
4.将本地项目推送至远程库
$ git push -u origin master
5.将远程库项目的更新到本地
$ git pull origin master
十、分支
1、创建分支
$ git branch dev #dev是新的分支的名字
2、查看所有分支
$ git branch
3、切换分支
$ git checkout dev #dev是要切换分支的名字
4、.创建并切换分支
$ git checkout -b dev
5、合并分支
$ git merge dev
注意:要切换到master分支上合并分支
6.删除分支
$ git branch -d dev
十一、IDEA集成Git