版本控制系统
作用
- 查阅文件修改记录
- 对比不同版本的变化细节
- 将文件回溯到之前的某个状态
种类
- 本地版本控制系统
- 版本库存放在本地磁盘,无法协同开发
- 集中化版本控制系统
- 版本集中存放在中央服务器上,所有参与人员都连接到该服务器上,实现协同开发
- 缺点:自己电脑没有版本库,本地无法进行版本管理;中央服务器宕机,则无法工作。
- case: Subversion(SVN)
- 分布式版本控制系统
- 版本可以放在远程仓库上,也可以在本地仓库上,在本地就可以进行版本管理,无需联网,一般通过远程仓库进行版本管理
- case:Git
Git简介
-
Git是开源的分布式版本控制系统,进行项目版本管理
-
Git工作流程:
- 基本流程
- 使用git命令将远程仓库上的文件克隆到本地仓库中
- 从本地仓库中检出文件到工作区(一般都自动完成)
- 将新创建的文件添加(add)到暂存区
- 将暂存区中的内容提交(commit)到本地仓库上
- 将本地仓库中的内容推送到远程仓库上
- 基本流程
-
Git安装
- 官网:https://git-scm.com
- 安装:只有win系统需要手动安装git,Linux和Mac OS系统都自带
- git的使用:
- Git命令行
- Git图形化客户端
-
初始化
对Git初始化设置(提交代码的时候,方便识别提交者)
#定义当前系统git的使用者名称和邮箱,提交代码时显示的名称和邮箱(名称和邮箱随便) git config --global user.name "zhangsan" git config --global user.email "100000@qq.com"
Git使用
1.常用命令
命令 | 作用 | 备注 |
---|---|---|
git init | 初始化本地Git仓库(项目) | 会在当前目录中创建一个gt目录,用于记录所有的版本变更信息 |
git status | 查看本地仓库的文件状态 | |
git add 文件路径 | 将文件添加到跟踪列表(暂存区),交由git托管 | -A或–all 表示添加所有文件,也可以使用*进行匹配 |
git commit | 将跟踪列表中的文件提交到本地仓库 | -m指定提交日志 |
git log | 查看提交日志 | |
git reset --hard 版本id | 回退到指定版本 | HEAD表示当前的版本 |
git reflog | 查看所有操作记录 | 包括被回退到版本id、reset操作登 |
注意:所有命令都必须在Git仓库的根目录下执行
2.文件状态
Git文件的四种状态
- untracked
- 未跟踪,表示文件不受git管理
- staged
- 已暂存,表示已对修改的文件做了标记,放在了暂存区
- committed
- 已提交,表示文件已被提交到本地仓库
- modified
- 已修改,表示文件被修改。已提交的文件修改后就会到这个状态,要提交,需要添加到暂存区,再提交到本地仓库。
3.忽略文件
可以在git仓库的根目录下添加一个名为.gitignore的文件,用于指定需要被git忽略的文件或文件夹
注意:
- 文件名必须是.gitignore
- 文件必须在项目的根目录下
- 每行指定已个忽略文件
- 以#开头的行表示注释
远程仓库
-
简介
基于Git的代码托管平台,常用的Git仓库:
GitHub https://github.com
码云 https://gitee.com
(GitHub是外网,服务器反应慢。一般在国内使用码云会比较快,功能和github差不多)
-
操作
分支Branch
静态界面托管
在IDEA中使用Git
(3年前的笔记,一直存在csdn草稿里,未完成,待续。。。)
PS:最近看那个git学习视频,发现可以下载对应的课件了。