一图展示免费开源的分布式版本控制系统Git

文章目录


前言

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

一、安装Git

Windows操作系统下,可以通过下载安装包直接安装到电脑里面。完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。

下载链接:https://git-scm.com/

Linux安装命令:

powershell 复制代码
sudo apt-get install git

二、Git配置

Git提供了一个叫做git config的工具,专门用来配置或读取相应的工作环境变量。

在 Windows系统上,Git会找寻用户主目录下的.gitconfig文件。配置个人的用户名称和电子邮件地址:

powershell 复制代码
# 配置用户名
git config --global user.name "sdl1314"	
# 配置邮箱
git config --global user.email "sdl1314@163.com"

在Linux初始化本地仓库:

powershell 复制代码
mkdir desktop/test
git init # 初始化本地仓库
git config user.name 'sdl1314'
git config user.email 'sdl1314@163.com'

三、git命令

Git单人操作

powershell 复制代码
git status # 查看文件状态,红色:工作区、绿色:暂存区
powershell 复制代码
# 工作区提交到暂存区
git add .	# 文件比较多全部提交
git add sdl.py	# 提交指定文件
powershell 复制代码
# 暂存区提交到仓库区
git commit -m "描述信息"
powershell 复制代码
# 查看提交的历史记录
git log
git reflog
powershell 复制代码
# 回退版本
git reset --hard 版本
	'''
	HEAD 表示当前最新版本
	HEAD^表示当前最新版本的前一个版本
	HEAD^^ 表示当前最新版本的前两个版本,以此类推...
	HEAD~1 表示当前最新版本的前一个版本
	HEAD~10表示当前最新版本的前10个版本,以此类推...
	'''
	
# 通过每个版本的版本号回退到指定版本
git reset --hard 版本号
powershell 复制代码
# 工作区代码撤销
git checkout 文件名

# 暂存区代码撤销
	# 第一步:将暂存区代码撤销到工作区
	git reset HEAD  文件名
	# 第二步:撤销工作区代码
	git checkout 文件名

标签

powershell 复制代码
git tag -a 标签名 -m '标签描述'
git push origin 标签名

# 删除本地标签
git tag -d 标签名
# 删除远程仓库标签
git push origin --delete tag 标签名

分支

作用: 主分支: 生产环境(维护线上环境)

子分支: 开发环境(研究开发新的功能, 攻关难题, 解决线上bug等等)

powershell 复制代码
# 查看当前分支
git branch
# 创建并切换到 dev 分支
git checkout -b dev
# 将分支推送到远程
git push -u origin dev
# 在 dev 分支编辑代码
add commit push
# dev 分支合并到 master 分支
注意:只有当 dev 分支合并到 master 分支成功,才能获取到修改的内容
# 先切换到 master 分支,dev 分支合并到 master 分支(合并分支默认在本地完成,合并后直接推送即可),用户拉取代码成功后就可以看见添加的部分。
相关推荐
灯澜忆梦6 小时前
【RabbitMQ #3】 | Go 客户端 + SpringAMQP
分布式·golang·rabbitmq
louisgeek11 小时前
Git submodule 子模块
git
imDwAaY11 小时前
6篇文章讲清楚Git:Git 实用技巧:暂存现场、挑选提交与定位 Bug (5/6)
git·后端
imDwAaY11 小时前
6篇文章讲清楚Git:Git 团队开发实践:从 Pull Request 到版本发布 (6/6)
git·后端
Q264336502312 小时前
【有源码】基于Spark的电商客户细分与盈利洞察分析系统-面向精准营销的电商客户细分模型构建与盈利能力可视化研究
大数据·hadoop·分布式·数据挖掘·数据分析·spark·毕业设计
新思维软件13 小时前
基于无线传输的地衡系统:三节点 LoRa 组网与 MQTT 上云的分布式称重方案
分布式·stm32·单片机·嵌入式硬件·物联网·物联网开发
俊哥大数据13 小时前
Flink1.20.3 实时消费 Kafka 数据并解析入湖 Paimon1.4.2 全流程实战
分布式·flink·kafka·数据湖·paimon
宸津-代码粉碎机19 小时前
OpenAI 连夜迎战 Grok Bot 和 Muse:AI 智能体从 “会聊天” 到 “能办事”,现在入场还来得及吗
java·大数据·人工智能·分布式·python
程序猿乐锅21 小时前
【黑马点评 | 第八篇】Redisson分布式锁
java·数据库·spring boot·redis·分布式·spring·缓存
灯澜忆梦1 天前
【RabbitMQ #7】 | 消息转换器
分布式·rabbitmq·ruby