Git仓库使用
一、安装Git
下载地址:https://git-scm.com/download
笔者下载的版本是: Git-2.27.0-64-bit.exe
下载好之后双击打开一连续点击 next 默认安装即可:
安装完成之后右击空白区域,可以看到命令行多了两行命令:
Git GUI Here
Git Bash Here
- GUI是图形化界面
中文:
- Bash是命令行,输入:
git --version
二、安装插件工具 TortoiseGit
使用大乌龟插件操作git,会更简单方便一些
下载地址:https://tortoisegit.org/download
下载完成默认安装即可
- Extra PATH 暂时可以不填写,直接下一步即可
- 在这最好配置上自己的用户名和邮箱
- 这边下拉框选择 OpenSSH,点击完成即可
安装完成右击空白区域就可以看到命令行多了这些命令:
三、Git的基本概念
3.1 Git的工作流程
Git工作流程一般如下:
- 从远程仓库中克隆Git资源作为本地仓库
- 从本地仓库中 checkout 代码然后进行代码修改
- 在提交前先将代码提交到暂存区
- 提交修改,提交到本地仓库,本地仓库中国保存修改的各个历史版本
- 在修改完成后,需要和团队成员共享代码代码时,可以将代码 push 到远程仓库
3.2 工作区和暂存区
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念
- 工作区:
工作区通常就是我们在电脑里能看到的目录,比如笔者下文创建的reporstory文件夹就是一个工作区,而此文件夹中创建的隐藏目录 .git 则是Git真正的版本库
Git的版本库例存了很多东西,其中最重要的就是stage(或者叫index)暂存区,还有Git自动创建的第一个分支master,以及指向master的一个指针 HEAD
如下图所示:
四、Git常用操作
4.1 创建版本库
版本库又名仓库,英文名 repository,可以简单理解成一个目录,这个目录里面的文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。由于Git是分布式版本管理工具,所以Git在不需要联网的情况下也具有完整的版本管理能力。
在F盘新建目录:repositorys (仓库名字可以任意取)
在 repositorys 目录中再创建目录 repo1(建仓库必须要有一个空的文件夹)
4.1.1 使用Git GUI
在当前文件夹空白处右击,Git GUI Here
- 点击 Create New Repository
- 点击 Browse
- 会自动识别到当前文件夹地址,点击选择文件夹
- 点击 Create
- 之后会进入到这样一个图形化界面
此时需要在 window中设置: 查看 -> 勾选“隐藏的项目”
然后可以看到一个 .git 隐藏的文件夹,这里存放的文件这就是git的版本库
4.2.2 使用Git Bash
在当前文件夹空白处右击,Git Bash
- 输入 git init ,也可以在当前文件夹创建仓库
4.2.3 使用TortoiseGit
- 在当前文件夹空白处右击,**Git Create repository here **
- 直接点击 ok 即可
对应的中文:
这样当前文件夹的仓库就创建完成
4.2 向本地仓库中添加文件
在 F:\repositorys\repo1 目录下随意创建一个文件,如 hello.txt
编辑一行内容:hello world
- 右击
tortoiseGit -> Add
- 点击 OK
- 此时hello.txt前面应该是要有一个 + 号图标的,但是由于是刚刚安装大乌龟,图标更新不及时,重启一次即可
4.3 查看版本库
版本库浏览器
4.4查看历史版本库
显示日志
- 查看版本的区别
ctrl 选择两个想要比较的版本,右击 比较版本差异
双击 Modified
4.5 删除文件
直接右击删除
若是误删了想在加回来,右击乌龟,还原即可
如果要真的删除,那么将文件删掉之后直接提交即可
还有一种是删除版本库的文件,但是保留本地的文件
再点击删除
这时候其实本地版本库的文件还在,只是打上了一个删除标记
这里再次提交一下就可以了
4.6 提交代码(忽略工程项目中不需要的配置文件)
比如说现在有一个创建好的IDEA工程: HelloProject ,内容如下:
现在要把写好的代码加到本地仓库中来,将 HelloProject 工程目录文件夹放入带有 .git
的工作目录下
先将文件加入暂存区:
点击确定即可
现在已经把文件都加入了暂存区
.idea 是IDEA的一些配置文件, HelloProject.iml 是项目描述,out 是生成的 .class 文件,现在如果只是想上传 lib(jar包) 和 src (项目源码) 上去,就需要把其他文件夹 忽略 掉,操作步骤如下:
ctrl 选中要忽略的文件夹,