当前位置: 首页 > 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.将本地仓库更新文件添加到远程仓库。

相关文章:

  • 本地跑通vue-element-admin项目
  • C++循环效率比较与优化建议
  • [逆向工程]DebugView捕获WPS日志?解析未运行WPS时Shell扩展加载的原因与解决方案(二十五)
  • 机器学习前言2
  • 从银行排队到零钱支付:用“钱包经济学”重构Java缓存认知
  • 【无标题】威灏光电哲讯科技MES项目启动会圆满举行
  • Vue主题色切换实现方案(CSS 变量 + 类名切换)
  • 存储器上如何存储1和0
  • 类模板的简单实例
  • mybatisPlus 新增时 其他字段的值和 id 保持一致实现方法
  • 基于Unity的简单2D游戏开发
  • Vue.js---计算属性computed和lazy
  • 用Python生成词云图的几种方式
  • Chrome拓展(Chrome Extension)开发定时任务插件
  • AWS中国区CloudFront证书管理和应用指南
  • 学习笔记(C++篇)--- Day 5
  • Untiy入门学习(一)3D数学(1)之数学计算公共类Mathf
  • 电子电器架构 --- Zonal架构正在开创汽车电子设计新时代
  • 全流程控制策略,确保AEM制氢安全性
  • 【四川省专升本计算机基础】第二章 计算机软硬件基础(1)
  • 国家统计局向多省份反馈统计督察意见
  • 讲座预告|以危机为视角解读全球治理
  • 一船明月过沧州:为何这座城敢称“文武双全”?
  • 经济日报:美国滥施汽车关税损人不利己
  • 市场监管总局等五部门约谈外卖平台企业
  • 《淮水竹亭》:一手好牌,为何打成这样