在春意盎然的季节里初识GIT

Git 与 SVN 区别

GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。
如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征。
Git 与 SVN 区别点:
1、GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。
2、GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
3、GIT分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录。
4、GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。
5、GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

Git 快速入门

Git 完整命令手册地址:http://git-scm.com/docs
PDF 版命令手册:github-git-cheat-sheet.pdf

Git 安装配置

在使用Git前我们需要先安装 Git。Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行。
Git 各平台安装包下载地址为:http://git-scm.com/downloads

Linux 平台上安装

Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码,所以需要先安装这些依赖工具。
在有 yum 的系统上(比如 Fedora)或者有 apt-get 的系统上(比如 Debian 体系),可以用下面的命令安装:
各 Linux 系统可以很简单多使用其安装包管理工具进行安装:

Debian/Ubuntu

Debian/Ubuntu Git 安装命令为:

$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \libz-dev libssl-dev$ apt-get install git-core$ git --version
git version 1.8.1.2

Centos/RedHat

如果你使用的系统是 Centos/RedHat 安装命令为:

$ yum install curl-devel expat-devel gettext-devel \openssl-devel zlib-devel$ yum -y install git-core$ git --version
git version 1.7.1

Windows 平台上安装

在 Windows 平台上安装 Git 同样轻松,有个叫做 msysGit 的项目提供了安装包,可以到 GitHub 的页面上下载 exe 安装文件并运行.
安装包下载地址:http://msysgit.github.io/
完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。
在开始菜单里找到"Git"->"Git Bash",会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。

Mac 平台上安装

在 Mac 平台上安装 Git 最容易的当属使用图形化的 Git 安装工具,下载地址为:
http://sourceforge.net/projects/git-osx-installer/

Git 配置

Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。
这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
当前项目的 Git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。
在 Windows 系统上,Git 会找寻用户主目录下的 .gitconfig 文件。主目录即 $HOME 变量指定的目录,一般都是 C:\Documents and Settings$USER。
此外,Git 还会尝试找寻 /etc/gitconfig 文件,只不过看当初 Git 装在什么目录,就以此作为根目录来定位。
用户信息
配置个人的用户名称和电子邮件地址:

$ git config --global user.name "runoob"
$ git config --global user.email test@runoob.com

如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。
如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

文本编辑器

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

$ git config --global core.editor emacs

差异分析工具

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

$ git config --global merge.tool vimdiff

Git 可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。

查看配置信息

要检查已有的配置信息,可以使用 git config --list 命令:

$ git config --list
http.postbuffer=2M
user.name=runoob
user.email=test@runoob.com

有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。
这些配置我们也可以在 ~/.gitconfig 或 /etc/gitconfig 看到,如下所示:
vim ~/.gitconfig
显示内容如下所示:

[http]postBuffer = 2M
[user]name = runoobemail = test@runoob.com

也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:

$ git config user.name
runoob

转载于:https://www.cnblogs.com/lzxianren/p/git.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/287935.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WinForm混合Blazor(下)

有时,为了省事,我们也可以把窗体的控件注入到ServiceCollection中,在razor中订阅事件,这样就省了中间的桥梁,直接用控件当桥梁,下面以一个Button和Timer为例,来展示使用方式。本例是把Button和T…

ArcGIS实验教程——实验七:矢量数据空间校正(Spatial Adjustment)

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】 本系列实验教程实验二讲述了栅格数据的数字化之前必须进行的操作--地理配准(地理配配准完整操作步骤),栅格地理配准和矢量空间校正都属于几何校正的内容,关于空间校正、地理配准、…

数据结构之冒泡排序

1 冒泡排序 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来 算法过程如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一…

博图程序需要手动同步_贴吧求助帖博图实例单按钮控制灯的程序

接上一期在贴吧看见的求助帖(上图看得见水印),因为没人回复,发帖的楼主好像删除了帖子。结果我抽时间用博图15.1,S71200做了一个,希望给需要帮助的新人能够起到作用,感觉有用的话可以关注一下我的公众号低压电工&#…

操作系统,,,也考完了【流坑】

操作系统博大精深岂是区区2学分能容?学习了一些机制和理论模型之后课外还是要继续学习转载于:https://www.cnblogs.com/learn-to-rock/p/5447750.html

php基础教程 第六步 学习数组以及条件判断switch补充

条件语句 switch 在上一节的学习中&#xff0c;学习了php的条件语句if。在php编程中进行条件判断还可以使用switch语句。switch语句语法如下&#xff1a; <?php switch (值或表达式) { case 值等于值1:当值等于值1时要执行的代码break; case 值等于值2:当值等于值2时要执…

ArcGIS实验教程——实验八:矢量数据拼接

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】 数字化工作都是分工完成的,那么数字化完成之后,怎样将各部分数字化的成果拼接成一个完整的矢量数据呢?本实验针对线状和面状矢量数据,讲解矢量化数据拼接的常用方法:合并(merge)…

iOS 类库列表

1. LinqToObjectiveC #import "NSArrayLinqExtensions.h" 它为NSArray添加了许多方法&#xff0c;能让你用流式API来转换、排序、分组和过滤其中的数据。转载于:https://www.cnblogs.com/SimonGao/p/4747065.html

dotnet-exec 小工具

dotnet-exec 小工具Intro在之前的文章中很多会有一些示例代码&#xff0c;这些代码一般都是一些很小的示例&#xff0c;尤其是介绍一些新特性的示例&#xff0c;基本上不会引用其他包&#xff0c;只有 SDK 就可以执行&#xff0c;对于这些示例&#xff0c;一般会每个实例单独一…

安卓手机抓包charles乱码_charles-抓包Andriod 手机的设置

长按弹出修改后&#xff1a;charles如果不配置SSL通用证书&#xff1b;会导致HPPTS协议的域名抓取失败/乱码的现象&#xff1b;现在SSL越来越多&#xff0c;很多博客都上了SSL&#xff0c;支付相关的行业更是基础配置&#xff1b;charles配置SSL证书&#xff0c;算起来很简单&a…

分布式服务下的关键技术(转)

系统架构演化历程-初始阶段架构 初始阶段的小型系统 应用程序、数据库、文件等所有的资源都在一台服务器上通俗称为LAMP&#xff08;linux、apache、mysql、php&#xff09;。 特征&#xff1a; 应用程序、数据库、文件等所有的资源都在一台服务器上。 描述&#xff1a; 通常服…

ArcGIS实验教程——实验九:矢量数据提取

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】本实验以矢量数据为实验数据,讲解矢量数据的提取方法及注意事项。 一、实验内容 1、直接选取,导出(所有要素) 2、导出视图范围中的所有要素 3、按指定的裁剪框裁剪数据 4、按指…

linux之sort命令

1 sort命令的参数 sort 参数(可以省略) file 具体参数如下 -b:忽略每行前面开始的空格字符,空格数量不固定时,该选项几乎是必须要使用的("-n"选项隐含该选项,测试发现都隐含) -c:检查文件是否已经按照顺序排序,如未排序,会提示从哪一行开始乱序 -C:类似于&q…

php基础教程 第七步数组补充及循环基础

键值对 上一节中简单的了解了数组的定义、取值及存储&#xff0c;这一节补充一下上一节数组的内容。 在上一节中&#xff0c;我们知道索引是用来标记值的位置&#xff0c;通过索引可以取得当前位置的值。这种一个索引对应着一个值的关系是一个映射关系&#xff0c;称为键值对。…

vs2013 c# 中调用 c 编写的dll出错的可能错误

先说出错原因: 堆栈调用顺序 解决办法: 使用 __stdcall 或 使用C#属性 CallingConvention 起因是我想在c#中调用c函数结果出错了 如下 C 头文件 #define DLLExport extern "C" __declspec(dllexport)DLLExport int func(int a, int b);DLLExport void init…

jemter在linux上怎么安装_办公便签软件怎么下载?怎么在电脑桌面上下载安装一款办公便签软件...

走进一间办公室的话&#xff0c;你会看到很多人都在电脑前辛勤地忙碌。确实&#xff0c;随着互联网技术的应用和普及&#xff0c;现在很多上班族都离不开电脑&#xff0c;甚至需要终日在电脑前伏案办公。也正是因为这样&#xff0c;很多人都想在电脑上下载安装一款办公便签软件…

C#布隆过滤器的实现

介绍布隆过滤器&#xff08;Bloom Filter&#xff09;是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多&#xff0c;缺点是有一定的误识别率…

MySQL服务安装

2019独角兽企业重金招聘Python工程师标准>>> 这里是5.7版本以上解压版的安装攻略~~~~~ 1.下载MySQL server https://dev.mysql.com/downloads/mysql/ 根据自己需要下载 2.解压放到指定文件夹。例如: C:\Program Files\MySQL 3.配置环境变量&#xff0c;在path中放入…

ArcGIS实验教程——实验十:矢量数据投影变换

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 一、实验描述 投影变换是指将一种地图投影转换为另一种地图投影,主要包括投影类型、投影参数和椭球体参数等的改变。 二、实验内容 (一)工具箱实现 ArcGIS中,矢量数据的投影变化工具位于:工…

vi 编辑器跳转到指定行数

如&#xff1a;跳转到25行 &#xff1a;set number :23转载于:https://www.cnblogs.com/yihujiu/p/5451948.html