简介
一.git简介
Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理.通过Git仓库来存储和管理这些文件,Git仓库分两种:
- 本地仓库:开发人员自己电脑上的Git仓库
- 远程仓库:远程服务器上的Git仓库
commit:提交,将本地文件和版本信息保存到本地仓库
push:推送,将本地仓库文件和版本信息上传到远程仓库
pull:拉取,将远程仓库文件和版本信息下载到本地仓库
二、Git的核心功能
代码回溯,版本切换,多人协作,远程备份
- 项目的版本管理:Git能够记录项目的每一次修改,包括修改的时间、内容、作者等信息,并生成对应的版本。开发者可以随时查看历史版本,比较不同版本之间的差异,甚至可以回退到任意版本。
- 团队协同开发:Git支持多个开发者在同一项目上进行协同开发,通过分支管理功能,每个开发者可以独立进行开发,不影响其他分支的代码。完成开发后,再将分支合并到主分支上。
三、Git的基本特点
- 分布式版本控制:Git采用分布式架构,每个开发者都可以在本地拥有一个完整的代码仓库,包含项目的全部历史记录和分支信息。这使得开发者可以在没有网络连接的情况下进行版本控制和代码管理。
- 快速高效:Git设计优化了存储和传输过程,使用了快速的算法,使得Git在处理大型项目和大量数据时表现得非常高效。同时,Git的操作命令也非常快速,使开发者能够快速进行版本控制操作。
- 强大的分支管理功能:Git可以轻松创建、合并和删除分支,使得团队协作更加灵活和高效。每个分支都可以独立进行开发,互不影响。
- 完整性保证:Git使用哈希值来标识版本,每一次提交的代码都会计算一个唯一的哈希值,保证了版本的完整性和可追溯性。
- 多种协议支持:Git支持多种协议和方式进行代码的传输和交换,包括HTTP、SSH等,使得团队成员可以方便地共享代码和进行协作开发。
- 缓存机制:Git引入了缓存机制,将文件的变化在内存中暂存,只有在需要提交时才会写入磁盘,大大提高了文件的读写效率。
- 灵活的工作流程:Git提供了灵活的工作流程,可以根据团队的需求配置不同的工作流程,适应不同的开发模式和项目需求。
四、Git的分支管理
- 创建分支 :使用
git branch <branch_name>
命令创建一个新的分支。 - 查看分支 :使用
git branch
命令查看当前仓库中的所有分支。 - 切换分支 :使用
git checkout <branch_name>
命令切换到指定的分支上。 - 合并分支 :使用
git merge <branch_name>
命令将指定的分支合并到当前分支上。
综上所述,Git是一个功能强大、高效灵活的分布式版本控制系统,被广泛应用于现代软件开发中。通过掌握Git的基本使用流程和分支管理功能,开发者可以更加高效地管理和跟踪代码的修改历史,提高团队协作的效率和质量。
五.安装
六.Git代码托管服务
登录码云,注册,创建远程仓库 地址https://gitee.com/lansss66/lans-git-01.git
使用git
Git常用指令
一.Git仓库配置
二.获取Git本地仓库
三.Git中的基本概念
在工作区
调用出git控制台,然后输入命令
git add 文件名
工作区文件状态
四.本地仓库操作
git commit 后可加-m'说明添加信息' 提交的文件,若不写提交的文件就是提交暂存区的所有文件
查看日志的commit这行后面的是版本号,可以通过git reset --hard 版本号回退版本
五.Git远程仓库操作
通过远程仓库克隆的本地仓库会与远程仓库建立关联,可通过get remote -v查看远程仓库地址.
想要把本地仓库和远程仓库关联可通过get remote add <shortname> <url>添加一个新的远程git仓库,shortname是别名.
一个本地仓库对应一个远程仓库
通过git push shortname 分支 提交到远程仓库中
从远程仓库克隆的代码包含代码和版本信息等
若团队协作中别人修改了仓库中的文件,想要获取修改的内容 通过git pull shortname 分支 来获取.
克隆只需一次,后面都是拉取
六.分支操作
git branch -r列出所有远程分支 -a列出所有本地和远程 git branch列出所有本地分支
分支之间相互不影响
git merge 把指定分支合并到当前分支
七.标签操作
八.在IDEA中配置Git
创建本地仓库
目录中找到VCS(创建后就会变成git),在项目的目录中选择位置创建git本地仓库即可
创建成功
提交的是源码,git提供了.gitignore文件用于忽略相关的不提交的文件
添加远程仓库
克隆
在git选中克隆选项or创建项目之前克隆
团队协作时,每天上下班都需要拉取或推送(保证没问题)代码,先拉取后提交