git 和 svn

2023-11-16

在对比集中式版本控制svn和分布式的版本控制git的时候可能会有一些疑问,例如,git 不联网可以使用吗?集中式版本控制系统的好处是什么?
以下总结了一些问题的对比,都是个人理解,如有不正确的请指正。

  • 设计思路
    git 分布式的核心设计是同步,而不是主从
    svn 集中式的版本控制系统设计核心思路是总分,集中管理

    svn 的版本控制系统在中央服务器上,git 每台电脑上都会存储版本控制信息,减少了对中央服务器(称作git服务器比较合适)的依赖。

  • 关于对文件的保存
    svn保存整个文件
    git保存最新文件和Diff信息

  • 关于commit
    svn commit后将自己的修改提交到远程仓库,需要联网才能commit
    git commit后将自己的修改提交到本地暂存区,这一步不需要联网,之后通过push才会退到远程仓库,需要联网。

  • 关于是否需要联网
    互联网内怎么都行,异地提交或外网提交的话都是需要联网的。svn update 和 commit 的时候没网是不能操作的;git pull(同步本地仓库) 和 push(推送到远程) 的时候需要有网络。

    svn 没网的时候暂时在本地修改文件,修改之后不能提交,等待有网络之后提交;git 没网的时候暂时先提交到本地暂存区,等待有网之后push到远程。

    断网时,svn 不能commit、update、push 也不能回滚等,git 可以 commiit 可以回滚等操作。

  • 关于服务器挂了
    假设svn服务器没了,就会丢掉了所有历史信息,因为本地只有当前版本以及部分历史信息。git 的话本地有着完整的历史信息。

使用上 svn 更像是一个文件管理系统,层及目录很清晰,git 的话突出的是其去中心化和强大的版本控制。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

git 和 svn 的相关文章

  • 从自己的 gitlab 服务器安装节点模块

    我想从我们的 gitlab 服务器安装节点模块 这是存储库的链接 http ABCD GITLAB myGroup myNodeModule git http ABCD GITLAB myGroup myNodeModule git 根据n
  • 如何禁用 GitHub 中的拉取请求?

    我试图了解如何禁用 github 中的 拉取请求 问题一 我们正在尝试使用变基工作流程 这意味着如果不是快速推进 那么使用拉取请求可能会有害 一种解决方案 为我想要禁用拉取请求的分支设置分支权限 或者将我添加为任何进入 master 的内容
  • Maven - 从 SVN 提取代码

    我正在将 J2ee 项目从 Ant 迁移到 Maven ant 任务之一是从 SVN 存储库中提取现有源代码编译它 并将其 jar 添加到我当前的构建中作为 Jar 是否可以获取源代码并在 Maven 中编译它 谢谢你
  • 如何关闭分支而不将其从 git 的历史记录中删除?

    我想提交并关闭其分支 而不将其从历史中删除 有了水银我会commit close branch then update转到上一个 然后继续工作 有了 git 我很困惑 没有与 Git 中关闭分支完全相同的方法 因为 Git 分支比 Merc
  • SSL 适用于浏览器、wget 和curl,但不适用于 git

    我有一个网站 用于托管 redmine 和几个 git 存储库 这非常适合 http 但我无法使用 https 进行克隆 即 git clone http mysite com git test git 工作正常 但是 git clone
  • 为什么 Jenkins SVN 插件在连接到我的 VisualSVN 服务器时会出现错误 E170001?

    我对 VisualSVN 服务器的了解 它支持 Windows Active Directory 身份验证和使用我的 Windows 用户名和密码的 基本 身份验证 我可以成功使用 TortoiseSVN CollabNet 和 Mac O
  • 更改先前提交的作者姓名:快进推送被拒绝

    我最近在 GitHub 上打开了一个存储库 我是 Git 新手 与新人一样 我使用默认名称和电子邮件进行提交 按照最佳菜鸟传统 我发现五次提交为时已晚 现在乐趣开始了 因为我开始搜索有关如何更改这些提交的作者和提交者名称的信息 美好的 我基
  • 如何使用 git --word-diff 显示空格差异?

    为了说明问题 参见diff https github com nim lang Nim commit 47c7fd037ed28b7de3d120b003d059d30e18f128 diff split diff 8af935b2312d
  • 使用 TFS REST API 获取 Git 提交的最新关联工作项

    我正在尝试获取关联的工作项使用 TFS REST API 进行 GIT 提交 https www visualstudio com en us docs integrate api git commits 我的请求 URL 如下所示 htt
  • 尝试配置 GIT 时 Eclipse 没有响应

    Windows 10 专业版 64 位SSD金士顿 i5 4690Eclipse 版本 全部工作空间 空问题 每次我尝试配置 TEAM gt GIT gt 配置或尝试导入 创建本地 远程 git 时 Eclipse 都会冻结 直到我强制用任
  • GIT 和 Ruby:如何从 ruby​​ 脚本内部取消设置 GIT_DIR 变量?

    我编写了一个非常简单的 部署 脚本作为我的post update挂钩到我的裸 git 存储库中 变量如下 live domain mydomain com staging domain stage mydomain com git repo
  • 合并 BPM 图表的最佳实践

    我们在 Java 环境中使用 Alfresco 活动图 这些图是有版本的 我们确实使用 GIT 我们经常会遇到合并分支的合并冲突 解决这个问题确实很痛苦 因为我们必须比较文件的文本内容来检查差异 有时 重新应用更改比合并更轻松 是否有合并此
  • 如何恢复已删除的远程分支

    我们的远程主分支被删除 我有主存储库的本地副本 但它已经过时了 我可以通过将最后一个已知的提交哈希值插入 URL 来查看 github 中的分支 但未能成功恢复它 我尝试了几个步骤来恢复它 git reset hard 16deddc05c
  • 如何获取 git 存储库中所有文件的计数?

    如何获取 git 存储库中当前所有文件的计数 您可以使用以下命令获取 git 存储库中所有跟踪文件的计数 git ls files wc l 命令分解 The git ls files命令本身打印出存储库中所有跟踪文件的列表 每行一个 Th
  • 如何在 SVN 中分支单个文件?

    分支的颠覆概念似乎专注于创建整个存储库的 不稳定 分支 并在其上进行开发 是否有一种机制可以创建单个文件的分支 对于用例 请考虑具有多个特定于平台的源代码 c 实现的通用头文件 h 这种类型的分支是永久性的 所有这些分支都将不断发展 偶尔会
  • 如何在颠覆合并期间忽略文件夹

    我有一大堆更改需要合并到我的分支中 但我想在合并过程中忽略特定文件夹 是否可以使用 Subversion 来做到这一点 如果是这样那我该怎么办呢 编辑 我想忽略的文件夹位于存储库中 但在合并期间我不会对此文件夹进行更改 您可以像平常一样进行
  • Smartgit:自动插入提交消息

    有没有办法使用钩子脚本在 Smartgit 中自动插入提交消息 重击 如果用户提交了他的更改 我想预加载提交消息字段 我没有看到任何SmartGit配置 http www syntevo com smartgit documentation
  • 如何在源代码管理中存储 Visual Studio 的调试配置

    Visual Studio 的调试配置存储在 user文件是用户特定的并且传统上被源代码管理忽略 我对工作目录参数感兴趣 我需要它在程序员的机器上保持一致 并且它具有以下价值 outDir而不是默认的 ProjectDir 我怎样才能解决这
  • Git撤销本地分支删除

    我刚刚删除了错误的分支 并进行了一些我需要的实验性更改git branch D branchName 如何恢复分支 您可以使用git reflog http git scm com docs git reflog查找分支最后一次提交的 SH
  • Git 实验分支还是单独的实验存储库?

    我正在开发一个 Android 应用程序 并且在整个开发周期中一直使用 Git 现在 我想构建并发布实验性功能 供人们尝试和安装 同时仍将原始的 稳定的应用程序安装在他们的设备上 现在 这意味着我需要使用不同的包名称 这会更改开发项目中的一

随机推荐

  • NO-CARRIER

    自己动手写了创建虚拟接口 删除虚拟接口程序 频繁调用创建删除时 有时将接口up起来时会报错 Name not unique on network 利用ip link命令来查看接口 及其对应的索引 可以查看到与其他接口不同的是有个标志为 NO
  • 利用多个panel重叠来代替tabcontrol方法

    这两天 在弄一个C 软件 看着tabcontrol那个讨厌的标签 真是火大 折腾了1个周末加今天1个白天 总是不行 其实我就是想要一排按纽 来控掉不同的界面显示 今天打算使用多个pannel来代替tabcontrol 自己在旁边再弄几个按纽
  • Angular_学习笔记_01

    3天Angular视频课程 之 第1天 学习笔记 1 安装 Node 官网下载 一路Next gt 2 安装Angular cli sudo npm install g angular cli 3 ng new app name 4 运行项
  • scrapy 快速入门

    安装Scrapy Scrapy是一个高级的Python爬虫框架 它不仅包含了爬虫的特性 还可以方便的将爬虫数据保存到csv json等文件中 首先我们安装Scrapy pip install scrapy 在Windows上安装时可能会出现
  • 【实用】Mysql 按照时间(年月周日)维度统计,不存在时间数据 自动补充 0 数值

    前言 ps 网上看了一大堆文章 介绍的东西真的是很够呛 就没一个能真正用起来的 各个都是自动补 然后很多都是不好用的 我自己整理一篇 这是真能用 本篇内容 按照 日 周 月 年 的维度 去对数据 做分组统计 不存在的数据自动补充 0 实用
  • 村长告诉你:Python实现性能自动化测试竟然如此简单

    一 思考 1 什么是性能自动化测试 性能 系统负载能力 超负荷运行下的稳定性 系统瓶颈 自动化测试 使用程序代替手工 提升测试效率 性能自动化 使用代码模拟大批量用户 让用户并发请求 多页面多用户并发请求 采集参数 统计系统负载能力 生成报
  • 记一次QuartzScheduler启动后无法正常执行定时任务的问题

    最近想研究一下爬虫 由于爬虫工具服务端采用的是docker镜像的方式 为了让docker环境和系统环境分开 PS 纯粹不想在windows机让安装太多这些有一定的系统侵入的程序 所以就准备下载一个VMware 搞个虚拟机 然后在虚拟机上装个
  • [计算机毕业设计]元学习方法的小样本图像分类算法

    前言 大四是整个大学期间最忙碌的时光 一边要忙着准备考研 考公 考教资或者实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生级别难度的 对本科同学来说是充满挑战 为帮助大
  • Vue8基础:事件处理

    1 事件处理 1 绑定监听 v on xxx fun xxx fun xxx fun 参数 默认事件形参 event 隐含属性对象 event 2 事件修饰符 prevent 阻止事件的默认行为 event preventDefault s
  • LLE原理及推导过程

    1 概述 所谓LLE 局部线性嵌入 即 Locally Linear Embedding 的降维算法 在处理所谓流形降维的时候 效果比PCA要好很多 首先 所谓流形 我们脑海里最直观的印象就是Swiss roll 在吃它的时候喜欢把它整个摊
  • 学习使用Shader处理纹理

    使用Shader处理纹理本是件简单的事情 但是我在尝试写一个简单的例子的时候却犯了个错误 导致郁闷了一天 这个稍后再说 先整理下怎么用Shader处理纹理吧 1 原理 用Shader处理纹理的原理其实很简单 将纹理通过一个uniform变量
  • 游戏王决斗连接显示服务器错误,游戏王决斗链接

    游戏王决斗链接公测常见问题一览 游戏王决斗链接最近也是正式公测啦 许多小伙伴在公测游玩中遇到了许多问题 下面就让小编带大家了解一下常见问题的解决方法吧 游戏王决斗链接公测常见问题 一 公测删档吗 不删档 决斗王链接在公测之前进行了好几次删档
  • windows修改mysql的my.ini文件导致服务启动失败

    windows修改mysql的my ini文件导致服务启动失败 解决 my ini的编码格式为ANSI 当我在服务器电脑直接打开编辑然后保存 默认保存的编码格式utf 8 所以导致启动失败
  • 期货开户用心服务每个客户

    用心服务每一个客户 以信为本 点石成金 蓄之既久 其发必速 如果价格连续多天在 个狭窄的幅度内升降 在图表上形成一幅有如建筑地盘布满地基桩的图景 习惯上称之为密集区 亦即专家所说的技术支持区 这个密集区一旦向上突破或向下突破 就会造成一个烈
  • C语言输出指针变量地址(十六进制)

    include
  • 微信小程序使用canvas绘制二维码实现跳转小程序

    开始接到这个需求的时候 我查阅文档获取小程序码 微信开放文档 发现两种途径 需要后端在服务器上调用接口拿到二维码 因为调用的 https api weixin qq com这个域名是不允许上白名单 或者是云开发 显然他们不需要云开发 这时候
  • C++ if 语句

    一个 if 语句 由一个布尔表达式后跟一个或多个语句组成 语法 C 中 if 语句的语法 if boolean expression 如果布尔表达式为真将执行的语句 如果布尔表达式为 true 则 if 语句内的代码块将被执行 如果布尔表达
  • Unity上玩转数字人(Avatar)

    现在数字人越来越有趣了 现在好多公司都在做 那我也想在Unity玩转一下 怎么玩呢 1 数字人准备以及跳舞动画 首先我们需要有数字人资源 数字人资源从哪来呢 第一你可以直接去Unity assetstore上去搜一下免费的数字人 有2个还是
  • C# 网络编程之获取本机名、ip地址、域名、物理位置

    在C 网络编程中 主机域名与ip之间能相互转换 同时DNS中有Dns类 IPHostEntry类 IPAddress类 DnsPermission类实现DNS的一些简单功能 下面主要讲述一个C 的Windows应用程序 实现以下功能 1 获
  • git 和 svn

    在对比集中式版本控制svn和分布式的版本控制git的时候可能会有一些疑问 例如 git 不联网可以使用吗 集中式版本控制系统的好处是什么 以下总结了一些问题的对比 都是个人理解 如有不正确的请指正 设计思路 git 分布式的核心设计是同步