Git是什么

embedded/2025/2/22 17:51:29/

简单介绍:

        Git是一个分布式版本控制系统,用于跟踪文件的更改,特别是在多人协作开发的环境中。

                Key:

分布式

版本控制

系统

        最常用于软件开发,但也可以用于管理任何类型的文件和文件夹。

        Git帮助团队跟踪和管理文件的历史版本,使得多人可以协同工作、进行并行开发,且能随时回溯到之前的版本。

  • 分布式:

---------------------------------------------------------------------------------------------------------------------------------

ps.

        Computer A 和Computer B 之间的箭头并不意味着它们直接相互交互或交换文件,而是它们通过 与服务器的交互,以保持版本同步。

        具体来说,这表示 电脑 A 和电脑 B 都可以与服务器进行数据交换,并且它们可以 互相同步和获取版本数据

---------------------------------------------------------------------------------------------------------------------------------

与传统的集中式分布进行比较:

特性

集中式版本控制系统 (CVCS)

分布式版本控制系统 (DVCS)

工作模式

依赖中央服务器,必须在线才能操作

每个开发者有完整的代码库副本,可以离线工作

容错能力

服务器故障会导致数据丢失或无法工作

每个开发者持有完整的代码库副本,服务器故障不影响本地工作

分支与合并

分支操作复杂且难以管理

支持快速、简便的分支与合并操作,提高开发灵活性

协作效率

需要频繁与中央服务器同步,可能造成延迟和冲突

可以本地完成操作后推送,减少等待时间和冲突,提高协作效率

灵活性与管理

主要由中央服务器管理,灵活性较低

支持多个远程仓库之间的数据共享和管理,提供更高的灵活性和分布式管理

  • 版本控制:

        主要目的是记录文件的历史变化,并支持团队协作,避免文件冲突和丢失。版本控制系统可以让多个开发者在不同的时间、地点同时编辑同一项目,且能够管理每次修改、查看历史版本,甚至恢复到之前的版本

                基本操作:

                        提交(Commit):保存文件的变更记录。

                        更新(Update):从版本库拉取最新的变更。

                        分支(Branch):创建独立的开发路径,用于开发新功能或修复bug。

                        合并(Merge):将不同分支的改动合并到主分支。

Git工作流程:

Git客户端操作流程:

操作步骤

命令

说明

1. 初始化Git仓库

git init 

在当前目录下初始化一个新的Git仓库。

2. 配置用户信息

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

配置全局用户名和邮箱,用于标记提交记录。

3. 添加文件到暂存区

git add <filename>
git add .

将文件添加到暂存区,准备提交。

4. 提交文件

git commit -m "Your commit message"

将暂存区的文件提交到本地版本库,并添加提交信息。

5. 查看状态

git status

查看当前工作目录和暂存区的状态。

6. 查看历史

git log

查看提交历史,查看项目的变更记录。

7. 创建分支

git branch <branch-name>

创建一个新的分支。

8. 切换分支

git checkout <branch-name>

切换到指定的分支。

9. 创建并切换分支

git checkout -b <branch-name>

创建并立即切换到新的分支。

10. 合并分支

git merge <branch-name>

将指定分支的更改合并到当前分支。

11. 查看分支

git branch

查看当前所有分支及所在的分支。

12. 删除分支

git branch -d <branch-name>

删除不再需要的本地分支。

13. 关联远程仓库

git remote add origin <repository-url>

将本地仓库与远程仓库进行关联。

14. 推送更改到远程仓库

git push origin <branch-name>

将本地分支的更改推送到远程仓库。

15. 拉取远程仓库更改

git pull origin <branch-name>

从远程仓库拉取指定分支的最新更改并合并到本地分支。

16. 克隆远程仓库

git clone <repository-url>

克隆远程仓库到本地。

  • 工作示意图:


http://www.ppmy.cn/embedded/164399.html

相关文章

前端(AJAX)学习笔记(CLASS 2):图书管理案例以及图片上传

* BootStrap弹框 功能&#xff1a;不离开当前页面&#xff0c;显示单独内容&#xff0c;供用户操作 步骤&#xff1a; 1、引入bootstrap.css和bootstrap.js 2、准备弹框标签&#xff0c;确认结构 3、通过自定义属性&#xff0c;控制弹框的显示和隐藏 其中的bootstrap.css…

MAC快速本地部署Deepseek (win也可以)

MAC快速本地部署Deepseek (win也可以) 下载安装ollama 地址: https://ollama.com/ Ollama 是一个开源的大型语言模型&#xff08;LLM&#xff09;本地运行框架&#xff0c;旨在简化大模型的部署和管理流程&#xff0c;使开发者、研究人员及爱好者能够高效地在本地环境中实验和…

ML.NET库学习009:花卉图像分类模型

文章目录 ML.NET库学习009&#xff1a;花卉图像分类模型进行图像分类训练的实现功能分析代码结构核心组件示例输出代码实现详细步骤说明注意事项 进行图像分类预测的实现主要目的原理概述实现的主要功能主要流程步骤使用的主要函数和方法关键技术功能详细解读&#xff08;1&…

【Rust中级教程】1.15. Trait bounds(Trait 约束)的编译与分派

喜欢的话别忘了点赞、收藏加关注哦&#xff08;加关注即可阅读全文&#xff09;&#xff0c;对接下来的教程有兴趣的可以关注专栏。谢谢喵&#xff01;(&#xff65;ω&#xff65;) 1.15.1. 静态分发(static dispatch) 编译泛型代码或者调用dyn Trait(详见【Rust自学】17.2…

Unity摄像机与灯光相关知识

一、Inspector窗口 Inspector窗口可以查看和编辑对象的属性以及设置 其中包含各种组件&#xff0c;例如用Cube对象来举例 1.Sphere(Mesh)组件&#xff1a; 用来决定对象的网格属性&#xff0c;例如球体网格为Sphere、立方体网格为Cube 2.Mesh Renderer组件&#xff1a; 用来设置…

8.python文件

文章目录 1.**文件**1.1**文件是什么**1.2**文件路径**1.3**文件操作**1.3.1**打开文件**1.3.2**关闭文件**1.3.3**写文件**1.3.4**读文件** 1.4**关于中文的处理**1.5**使用上下文管理器** 大家好&#xff0c;我是晓星航。今天为大家带来的是 python文件 相关的讲解&#xff0…

Deepseek 与 ChatGPT:AI 浪潮中的双子星较量

引言 在人工智能飞速发展的当下&#xff0c;AI 语言模型成为了人们关注的焦点。Deepseek 与 ChatGPT 作为其中的佼佼者&#xff0c;各自展现出独特的魅力&#xff0c;引领着 AI 技术的发展潮流。今天&#xff0c;就让我们深入探讨这两款模型&#xff0c;看看它们在 AI 领域中是…

使用 DeepSeek 生成流程图、甘特图与思维导图:结合 Typora 和 XMind 的高效工作流

在现代工作与学习中&#xff0c;可视化工具如流程图、甘特图和思维导图能够极大地提升信息整理与表达的效率。本文将详细介绍如何使用 DeepSeek 生成 Mermaid 文本&#xff0c;结合 Typora 快速生成流程图和甘特图&#xff0c;并通过 Markdown 格式生成思维导图&#xff0c;最终…