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

Git 的使用以及vscode 下git 的使用(一)

1、git 和svn

Git 和 SVN 都是版本控制系统,它们都用于管理代码的版本,但它们之间有一些显著的区别:

  • 分布式 vs 集中式:Git 是一个分布式版本控制系统,这意味着每个开发者都拥有整个代码库的完整副本,并且可以在本地进行提交、分支和合并操作,不需要连接到中央服务器。SVN 是一个集中式版本控制系统,它依赖于一个中心服务器来存储代码库,开发者需要连接到这个服务器才能进行版本控制操作。
  • 离线工作:由于 Git 是分布式的,开发者可以离线工作,即在没有网络连接的情况下进行提交、分支和合并。SVN 在没有连接到中心服务器时,功能会受到限制。
  • 速度:Git 的速度通常比 SVN 快,尤其是在处理大项目和大量文件时,因为 Git 使用了一种称为“快照”的技术,只记录文件的更改,而不是整个文件的新版本。
  • 分支和合并:Git 对分支和合并的支持非常强大,它允许开发者轻松地创建、合并和删除分支。SVN 的分支和合并功能也可用,但通常被认为不如 Git 直观和高效。
  • 历史记录:Git 的历史记录是分布式的,每个开发者的本地副本都包含了完整的历史。SVN 的历史记录则存储在中心服务器上。
  • 安全性:Git 提供了更多的安全特性,如数字签名和加密。SVN 在这方面的支持相对较弱。
  • 社区和使用:Git 在开源软件开发社区中非常流行,是许多开发者首选的版本控制系统。SVN 也有广泛的使用,尤其是在企业环境中。

选择 Git 还是 SVN 取决于你的具体需求和项目的特点。Git 更适合那些需要分布式协作、频繁分支和合并以及快速版本迭代的项目。SVN 对于那些更依赖于集中式控制、简单的访问管理和不需要离线工作的项目可能更适合。

 

 

2.Git 的安装:

        Git安装_giit安装-CSDN博客。

        linux下git的安装与使用_linux 安装git-CSDN博客。

         

3.Git 的使用和原理

模拟和使用。

  1. 克隆 git clone +地址。
  2把远程代码拉到本地,自动创建了两个东西
    (1).origin 远程仓库名 git remote 查看 。
    (2)本地仓库。 生成了一个主干分支  =>  master 分支。git branch


  3.  git 工作区 :本地仓库的代码目录
      git log 查看当前分支的修改记录

  4. git status 会查看工作区已经修改但是未添加到库里面的代码。

  5. 设置信息:
     git config --global user.name 'wang jingbin'
     git config --global user.email 'wnagjingbin@163.com'

  6.修改代码之后:
    git add . 或者添加指定的文件 如git add 01.cpp 等
    git add:将工作区的代码改动,提交到暂存区里面。
    git commit -m "创建暂存区"
    git 本地仓库: git 工作区  ->git add 暂存区里面去 ->git commit 将本地仓库的改动提交到代码分支上了(master)(注意使用
    git 命令需要在.git 同级目录下才可以) --> git push   origin master:master(本地名称和远程名称一样 可以简写为
    git push origin master)  将本地仓库代码push 到远程代码分支。


  另外一个人可以使用 git pull 可以拉取更新后的代码。
git checkout  分支名 切换分支。

 

                                git 的使用原理图

 


  7.回退操作。

     (1)在添加git add . 之前:使用git checkout -- .  (fileName) 实际就是用本地仓库的代码,把当前工作区的覆盖掉。

     (2)在git add . 之后,已经把工作改动添加到暂存区了,但是在git commit 之前:使用:
      git reset HEAD (全部或者某个文件)
      可以取消暂存区域的修改。
     (3)在远程之前,在git commit -m  "" 之后。使用
       git reset --hard id(commit_id)
      每个 commit 有一个head 指针,移动了head 指针。

      git reflog 查看之前的操作。
    (4)已经通过git push origin master 了。
      方法一:git pull 拉下来最新代码,之后再重新修改更新

      方法二:在本地仓库找到修改之前的(git reset --hard id),修改重新提交。(直接修改不行,只有本地仓库领先于
      远程仓库才可以 git push origin master)。
      需要强制 git push origin master -f

                                                 git 原理图

4.vscode 下使用git

(1)当年打开本地包含.git 的文件时候,vscode git 自动打开。

(2)changes 相当于 git status 操作,查看当前哪些文件做了修改,

 

(3)同时打开会显示两份文件修改亲啊后的对比和区别

 

这里Stage Changes 相当于git add . 操作,把工作区添加到暂存区

 

添添加到本地master 分支上,相当于git commit -m ""。

 点击会让你输入更信息 相当于git commit -m "" 引号内的信息。

 

(4)点击commit

注意此时会有一个问题,导致commit 一直再旋转,加到本地。

打开设置 -》settings -> 搜索 use editor ->找到use editor as commit 取消勾选。即可。

 

 (5) 同步到gitee 或者github 远端仓库

即可 ,当然第一次需要用户名称和密码或者设置了ssh 密令,字节输入一下输入一下就好。

(6) 验证 登录到字节的gitee 或者github 查看文件是否更新。

 


http://www.kler.cn/a/299001.html

相关文章:

  • gitee给DeployKey添加push权限
  • 【C#】try-catch-finally语句的执行顺序,以及在发生异常时的执行顺序
  • 用SparkSQL和PySpark完成按时间字段顺序将字符串字段中的值组合在一起分组显示
  • OpenGL ES 01 渲染一个四边形
  • 批量DWG文件转dxf(CAD图转dxf)——c#插件实现
  • 3.使用SD卡挂载petalinux根文件系统
  • Java基础 2. Java基础语法
  • 请解释Java中的深拷贝和浅拷贝的区别。什么是Java中的代理模式?它有什么作用?
  • HTML5全面知识点
  • 重装电脑系统时硬盘被重新分区:数据恢复实战指南与深度解析
  • DApp开发入门指南:从概念到实践
  • 阿里云Elasticsearch AI搜索实践
  • minio实现大文件断点续传
  • SockJS的使用方法
  • 如何编辑pdf文件?金舟PDF编辑器解决PDF编辑、转换问题!
  • 华为 HCIP-Datacom H12-821 题库 (16)
  • Java项目: 基于SpringBoot+mybatis+maven实现的IT技术交流和分享平台(含源码+数据库+毕业论文)
  • 路径规划——D*算法
  • ubuntu内核升级后的问题修复
  • AMP网站如何适配提升SEO效果?
  • 编曲术语:编曲术语中英对照表
  • 安宝特方案 | 医疗AR眼镜,重新定义远程会诊体验
  • Unity Apple Vision Pro 开发(五):PolySpatial 2.0 导入方式
  • 【我的Android进阶之旅】解决CardView四个圆角有白边的问题
  • kkFileView PDF Image Mode Preview BUG
  • 【安全漏洞】Apache Tomcat 高危漏洞版本