Git 分布式版本控制系统

开源网站开源项目 24-04-27 10:30:53

Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。

Git的特点

分支更快、更容易。

支持离线工作;本地提交可以稍后提交到服务器上。

Git 提交都是原子的,且是整个项目范围的,而不像 CVS 中一样是对每个文件的。

Git 中的每个工作树都包含一个具有完整项目历史的仓库。

没有哪一个 Git 仓库会天生比其他仓库更重要。

Git 是用于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。

实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发。

Git 与 SVN 区别

GIT是分布式的,SVN不是

GIT把内容按元数据方式存储,而SVN是按文件

GIT分支和SVN的分支不同

GIT没有一个全局的版本号,而SVN有

GIT的内容完整性要优于SVN

Git的缺点学习资料少。

学习周期相对而言比较长。

不符合常规思维。

代码保密性差。

配置Git环境

在Windows下,可以使用Git For Windows安装包进行安装。 在 Windows 平台上安装 Git 同样轻松,有个叫做msysGit 的项目提供了安装包,可以到 GitHub 的页面上下载 exe 安装文件并运行。

完成安装后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。在开始菜单里找到"Git"->"Git Bash",会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。

在 Mac 平台上安装 Git 最容易的是使用图形化的 Git 安装工具,点击下载。安装界面如左图所示。

完成安装后,在终端输入“git”,如果出现了使用帮助信息,说明安装成功。如果安装未成功,请尝试重新安装。

在Linux下安装Git,只需要在终端输入“apt install git”即可。

安装完Git后,需要进行配置,如姓名、Email等。关键命令如下:

git config --global user.name "你的名字"git config --global user.email 你的邮箱名@主机名.域名# 例如git config --global user.name "San Zhang"git config --global user.email san-zhang@outlook.com

设置Git默认使用的文本编辑器, 一般可能会是 Vi 或者 Vim。如果你有其他偏好,可以进行重新设置:

git config --global core.editor 文本编辑器名字

还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。

git config --global merge.tool 分析工具名字

要检查已有的配置信息,可以使用 git config --list 命令:。有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:

git config user.name

开源中国Git托管平台:码云。

[Git 分布式版本控制系统]相关推荐

Delphi 集成开发环境

Delphi,是美国Borland(宝兰)公司於1995年开发在Windows平台下的快速应用程式开发工具(Rapid Applicati……...

Rufus U盘系统工具

Rufus U盘系统工具

Rufus 是一个开源免费的快速制作 U 盘系统启动盘和格式化 USB 的实用小工具,它可以快速把 ISO 格式的系……...

Feedly一款国外RSS订阅工具

Feedly一款国外RSS订阅工具

Feedly是一款国外RSS订阅工具,一般的国内用户很少去访问和使用,所以对于第一次访问Feedly的用户,Feed……...

Navi 组件化系统框架

Navi 项目介绍: 在过去的一年里,会员交易系统的下单服务进行了彻底重构。重构后,在下单服务上对接新支……...

gout Go 的 HTTP 开发包

gout —— 做最好用的http client库,示例代码: // 创建一个实例// 也可以直接调用包里面的GET, POST方法/……...

今日开源
  1. Webots 开源机器人模拟器

    Webots 开源机器人模拟器

    Webots 是用于模拟机器人的开放源代码和多平台桌面应用程序。它提供了一个完整的开发环境来对机器人进行建模,编程和仿真。 它被设计用于专业用途,并且广泛用于工业,教育和研究。自1998年以来,Cyber​​botics Lt……

    开源软件 2024-05-03

  2. par markdown 转换 html 工具

    par 是一个基于 pyPEG 写的转換 markdown 为 html 的工具,它是用 python 语言开发的。 除了支持标准的 markdown语法,还支持一些扩展语法,如 github 的 markdown 扩展及自定义的扩展,可以生成 boostrap 或 sema……

    开源软件 2024-05-03

  3. OSSEC 入侵检测程序

    OSSEC 入侵检测程序

    OSSEC是一款开源的入侵检测系统,包括了日志分析,全面检测,rook-kit检测。作为一款HIDS,OSSEC应该被安装在一台实施监控的 系统中。另外有时候不需要安装完全版本得OSSEC,如果有多台电脑都安装了OSSEC,那么就……

    开源软件 2024-05-03

返回顶部小火箭