当前位置: 首页 > news >正文

git版本控制学习

1.环境搭配

2.Linux常用指令

        

cd:更改目录cd..回到上一级目录pow:显示当前所在的目录路径li(||):列出当前目录所有文件,只不过||例出的内容更为详细touch:新建一个文件夹如touch index.js就会在当前目录下新建一个index.js文件rm:删除一个文件,rm index.js 就会把index.js文件删除mkdir:新建一个目录,就是新建一个文件夹rm -r:删除一个文件夹,rm -r src 删除src目录mv移动文件,mv index.html src    index.html是我们要移动的文件 ,src是目标文件夹clear:清屏reset 重新初始化终端/清屏history查看命令历史help帮助exit退出#表示注释

git工作原理

基本概念

        

  • 仓库(Repository):存储项目所有文件和版本历史的数据库。

  • 工作区(Workspace):本地目录,直接编辑文件的地方。

  • 暂存区(Staging Area):临时存放待提交的修改(用git add添加)。

  • 提交(Commit):将暂存区的修改永久保存到本地仓库(生成唯一ID)。

  • 分支(Branch):独立开发线,默认分支为mastermain

  • 远程仓库(Remote):托管在服务器(如GitHub)的仓库,用于协作。

  • 合并(Merge):将分支的修改整合到另一分支,可能产生冲突。

  • 冲突(Conflict):多人修改同一文件时需手动解决的差异。

 工作流程

工作区、暂存区和仓库

Git 的工作流程涉及三个主要区域:工作区(Working Directory)、暂存区(Staging Area)和仓库(Repository)。

  • 工作区:这是用户实际编辑文件的地方。所有未提交的更改都存在于工作区中。
  • 暂存区:暂存区是一个临时区域,用于保存即将提交的更改。通过 git add 命令将工作区的更改添加到暂存区。
  • 仓库:仓库是 Git 存储所有提交历史的地方。通过 git commit -m命令将暂存区的更改永久保存到仓库中。

分支与合并

Git 的分支机制是其强大功能之一。每个分支都是一个指向某个提交的指针,默认分支通常称为 master 或 main

  • 创建分支:通过 git branch <branch-name> 命令可以创建一个新分支。
  • 切换分支:通过 git checkout <branch-name> 命令可以切换到指定分支。
  • 合并分支:通过 git merge <branch-name> 命令可以将指定分支的更改合并到当前分支

远程仓库

Git 支持与远程仓库的交互,通常用于团队协作。

  • 克隆仓库:通过 git clone <项目链接> 命令可以将远程仓库克隆到本地。
  • 拉取更新:通过 git pull 命令可以从远程仓库拉取最新的更改并合并到当前分支。
  • 推送更改:通过 git push 命令可以将本地分支的更改推送到远程仓库。

git常用命令

基础命令
命令作用
git init初始化本地仓库
git clone <url>克隆远程仓库到本地
git status查看工作区和暂存区状态
git add <file>添加文件到暂存区(git add .添加全部)
git commit -m "消息注释"提交暂存区内容到本地仓库
git push推送本地提交到远程仓库
git pull拉取远程更新并合并到本地
分支与合并
命令作用
git branch查看分支列表
git checkout -b <branch>创建并切换分支
git merge <branch>合并指定分支到当前分支
git rebase <branch>变基(线性历史,慎用)
查看与回退
命令作用
git log查看提交历史
git diff查看工作区与暂存区的差异
git reset --hard <commit>回退到指定提交(谨慎使用)

git文件操作 

        

get status 查看所有文件状态

get status 文件名 查看指定文件状态

当遇到不想的提交文件时候

*.txt #忽略所有.txt结尾的文件,这样的话上传就不会被选中

!lib.txt #但lib.txt文件除外

/temp #仅忽略项目根目录下的todo文件,不包括其他目录temp

build/ #忽略builld/目录下的所有文件

doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

git的工作流程一般是这样的

1.在工作目录中添加,修改文件 user.xml

2.将需要进行版本管理的文件放入暂存区域;git add

3.将暂存区域的文件提交到git仓库. git commit

因此git管理的文件有三种状态:以修改(modified),已经暂存(staged),已经提交(committed)

# 初始化一个新的 Git 仓库
git init# 将文件添加到暂存区
git add <file-name>
git add .提交所有文件# 提交更改到仓库
git commit -m "Commit message"# 查看当前状态
git status# 查看提交历史
git log# 创建并切换到新分支
git checkout -b <branch-name># 合并分支
git merge <branch-name># 克隆远程仓库
git clone <repository-url># 拉取远程更新
git pull# 推送本地更改
git push

实际演示

仓库初始化

1.删除原本文件

2.创建一个txt文件。处于工作区

3.查看文件状态

4.提交文件到暂存区 git add . 提交所有文件

5.查看文件状态

6.提交到本地仓库 git commit -m "注释"

7.查看文件状态

指向rm mm.txt 后会删除mm.txt文件 

以上的工作流程。 

克隆远程仓库 gitee为例

1.在gitee创建远程仓库

2.克隆远程仓库到本地仓库

将本地仓库代码更新到远程仓库

1.创建远程仓库。

注册gitee或者gethub,登录创建我的仓库

2.配置ssh密钥。

3链接远程仓库。

4.将本地仓库更新文件添加到远程仓库。

http://www.xdnf.cn/news/480889.html

相关文章:

  • AB Download Manager v1.5.8 开源免费下载工具
  • AI 编程 “幻觉” 风险频发?飞算 JavaAI 硬核技术筑牢安全防线
  • 1688代采系统商品采集下单支付解决方案|官方API接口接入指南
  • Android从单体架构迁移到模块化架构。你会如何设计模块划分策略?如何处理模块间的通信和依赖关系
  • 开源轻量级地图解决方案leaflet
  • Mac安装Navicat16
  • mac的Cli为什么输入python3才有用python --version显示无效,pyenv入门笔记,如何查看mac自带的标准库模块
  • 前端面经 手写Promise
  • GTS-400 系列运动控制器板卡介绍(三十五)---读取运动控制器版本号
  • 大语言模型 09 - 从0开始训练GPT 0.25B参数量 补充知识之数据集 Pretrain SFT RLHF
  • 车道线检测----CLRKDNet
  • 【CanMV K230】AI_CUBE1.4
  • mac中加载C++动态库文件
  • RK3568-鸿蒙5.1镜像烧录与调试
  • 不同坐标系下MATLAB绘制阵列的方向图
  • Gen5 应用实例
  • Qwen3技术报告解读:训练秘籍公开,推理与非推理模型统一,大模型蒸馏小模型(报告详细解读)
  • H3C网络设备(交换机、路由器、防火墙)常用命令整理
  • 德劳内三角剖分原理
  • VSCode + Cline AI辅助编程完全指南
  • ubuntu环境下 基于Python 打包的 批量命令行可视化操作工具 GUI
  • 数字经济新范式:探秘国际数字影像产业园的园区服务
  • Gensim 是一个专为 Python 设计的开源库
  • 如何在 Windows 10 或 11 上使用命令提示符安装 PHP
  • 多模态大语言模型arxiv论文略读(七十八)
  • 【python基础知识】Day 27 函数专题2:装饰器
  • SAP ABAP 程序中归档数据读取方式
  • React Flow 节点类型详解与实战:内置节点使用与自定义组件开发
  • 排序算法之线性时间排序:计数排序,基数排序,桶排序详解
  • 怎么用idea分析hprof文件定位JVM内存问题