Git 简介
- Git 是一个免费和开源的分布式版本控制系统,用于软件代码的版本控制。
- 它本质上是一个软件,用于存储各个版本的软件代码文件,支持版本切换,协同开发等功能。
主要特点
- 分布式:支持多台机器上的多个副本,异地存放。
- Linus Torvalds 创建,最初用于 Linux 内核的版本管理。
版本控制系统对比
- Subversion (SVN):集中式版本控制系统。
- Git:分布式版本控制系统。
Git 常用平台
- GitHub:全球范围的代码托管平台,提供可视化界面,商业化服务。
- Gitee:国内的 GitHub,提供 DevOps 和 CI/CD 功能。
- GitLab:适用于公司内部的代码托管平台,通常部署在局域网内。
Git 基本操作
安装 Git
- 在 Linux 系统中,使用包管理器安装 Git(如
yum install git -y
)。
配置 Git
- 配置全局用户名和邮箱(
git config --global user.name "用户名"
和git config --global user.email "邮箱"
)。
初始化仓库
- 在本地目录中使用
git init
初始化新的 Git 仓库。
克隆仓库
- 使用
git clone [仓库URL]
克隆远程仓库到本地。
添加文件到暂存区
- 使用
git add [文件名]
或git add .
将文件添加到暂存区。
提交文件到本地仓库
- 使用
git commit -m "提交信息"
将暂存区的文件提交到本地仓库。
上传代码到远程仓库
- 使用
git push [远程仓库名] [分支名]
将本地仓库的代码上传到远程仓库。
查看状态
- 使用
git status
查看当前仓库的状态。
查看提交记录
- 使用
git log
查看提交记录。
分支操作
- 创建分支:
git branch [分支名]
- 切换分支:
git checkout [分支名]
或git switch [分支名]
(Git 2.23+)- 创建并切换分支:
git checkout -b [分支名]
或git switch -c [分支名]
(Git 2.23+)- 合并分支:
git merge [分支名]
- 删除分支:
git branch -d [分支名]
SSH 密钥认证
- 生成 SSH 密钥对(
ssh-keygen -t rsa
)。- 将公钥添加到 Gitee 或 GitHub 的部署公钥管理中,以便无密码推送代码。
Git 工作流
- Git 有三种状态:已提交(committed)、已修改(modified)、已暂存(staged)。
- Git 项目包含三个工作区域:工作区(Working Directory)、暂存区(Staging Area)、Git 目录(Git Directory)。
版本标签
- 在软件开发过程中,常用 alpha、beta、stable 等标签来表示不同的开发阶段和稳定性。
协同开发
- 使用分支进行功能开发,完成后合并到主分支。
- 使用 pull request 通知其他开发者合并代码。
总结
Git 是一个强大的版本控制系统,支持分布式存储、协同开发、版本控制等功能。通过简单的命令,可以高效管理代码版本,促进团队之间的协作。在实际开发中,熟练掌握 Git 的基本操作对于提高开发效率和代码质量至关重要。