版本控制系统Git(一)

话说程序员不懂得git的使用,那这个开发人员不是一个好程序员,今天公司培训git使用,才发现自己也不会用,为此本人省去了看电视剧以及陪孩子的时间,记录下自己的Git学习过程,尽量以问答的形式来表述,分享给的大家,希望能帮到大家。

相信大家再开发过程中都有拷贝过别人的代码,我也不例外那就是大名鼎鼎的Github。其实大家都是它是个代码管理平台和开源社区。

  • 为什么要版本控制系统?

我们上学时候都是文件夹共享的形式,共享给大家,缺点我就不说了自己想吧。。后来有了集中式版本控制系统SVN,集中版本管理的服务器。分支管理,历史版本都存再服务器当中了,版本比较 。SVN有个缺点就是那一天服务器挂了那就完了。在一个就是效率性能低。这时候linux的内核开发者linus就觉得不好。创造了分布式的版本控制系统。git。

分布式控制系统VCS:服务器于客户端都有完整的版本库,脱离服务器端,客户端照样可以管理版本。

查看历史和版本比较等等多数操作,都不需要访问服务器,比集中式SVN更能提高版本管理效率。

 

大牛出马开发出来的产片就是不一般。

Git特点

1,最优的存储能力

2,非凡的性能

3,开源的

4,很容易做备份

5,支持离线操作

6,很容易定制工作流程。

我觉得特点1,2 完全是得益于大牛出马,毕竟Linues是内核专家和文件系统专家。

  • 那么Github和git是什么关系呢?

嘻嘻,说来话长我也是网上查到的,git和GitHub的渊源很深,有点父子关系但是儿子比父亲更厉害,居然牛逼到提供了基于Web服务的形式产品出现了。呵呵这就是我想说的。当然还有另外一个就是我们公司正在使用的GitLab。

 

这里我先我得一点认识分享给大家,先知道GitHub,GitLab和Git的关系。为了能够更深入的理解我这里是先学习Git,我得环境是Windows,所以学习环境也只能是Windows了。

 

  • 如何安装Git?

Git官网:http:://git-scm.com

Git官方文档地址:http:://git-scm.com/book/zh/v2

Windows平台Git下载地址:http:://git-scm.com/download/win

 

 

//注意Git的文档是支持中文的额!!!!!可以切换如下图

 

安装方法可以参照里面的介绍,这里我就不再啪啪啪的写了。小伙伴自己看吧。。

注意:下载二进制比较简单而且会自动判断你的系统下载对应的32位还是64位的二进制安装包。我这里下载的是2.21.

安装完成之后验证是否安装成功。

控制台输入:git  --version

  • 安装之后的最小配置问题?

在使用Git之前必须要做一个一个最小配置。也就是说要把把参与开发工作人员的your name 以及emal 进行一个设置,那么大家肯定会想别的版本控制系统都不需要配置要求,那么git需要这些信息呢?经过我查询百度啊,发现大部分都说是这样说的:每个的做的工作的变更那个时间点是谁做出来的变更,那么这个信息是跟着这个的变更信息捆绑在一起的,同时我们做代码评审(code Review)那每一次的变更带上了这个用户的Email地址,那么评审的人员在这个平台上面指出了你那个文件有问题,那么我们这个web管控的web系统它就自动的会把变更者的Emil取出来,就自动的发个邮件给这个变更的人。所以Git变更的信息就有了Your Name  your  Email是必须配置起来的。如果大家忘了配置的时候后期你在做变更提交的时候它应该有一长串的提示信息必须做相关的配置。

正常的配置:

$git  config --global   user.name   'your_name'

$git     config   --global  user.email  'your_email@domain.com'

既然有--global  那么也有local(Git管理我们的文件系统,只管理某一个仓库git所配置的信息只会针对当前的仓库有效)--global(比如系统有10个仓库,就是针对所有仓库,就不用一个一个配置了)  --system(这个基本不用,它是对所有登陆的用户有效)。

  • 如何查看现有的配置是什么样呢?就是现有的config的配置是什么样的?

这时候我们加个参数--list 就可以了。

git  config --list  --local

你可以看出local 提示必须在一个仓库里面才可以起作用,我们当前路径普通路径git根本没有管理这一块。

那么我们设置成local会怎么样呢?

所以local所以后面我们会建立一个仓库,这个疑问我们留着继续学习Git  config的命令参数选项

参数--list后面不加范围限制的话会把所有的配置都显示出来

到这里我学习了最小配置,也练习了如何配置,那么这样以后我们提交的时候就不会提示一长串的信息了。。

以免以后我们我们生成commit 提交时候email是无效的,比较麻烦这样我们学习的道路会更顺畅一点。

接着我们解决上面的问题,--local 它提示必须的有仓库,那么我们如何创建一个本地仓库。

  • 建git仓库

建立Git仓库有两种情况:建立仓库之前,已经有了代码,还有一种就是还没有代码也想把建立的项目纳入到GIt管理中。

1,把已有的项目直接用Git管理。//只需要进入已有的代码文件夹就行了。

$ cd  项目代码所在文件夹

$git   intit 

2,新建的项目直接用Git管理  //没有项目代码

$ cd    某个文件夹

$git   init   your_project  #会在当前路径下创建和项目名称同名的文件夹,这个文件夹有个裸仓库.git

$ cd   your_project

我们就在当前默认的路径文件夹下执行

$ git   init  git_learning  命令,就会发现一个文件夹且里面里面有个.git裸仓库的隐藏的文件夹

 

注意:这个.git文件夹是Git的核心。那么这个.git里面到底有什么东西??我们带着个疑问继续学习。我们先解决我们输入:

git   config  --local  user.name  'zhuweiwei'

git   config  --local  user.email  '2892710568@qq.com'

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【1】项目代码完整且功能都验证ok,确保稳定可靠运行后才上传。欢迎下载使用!在使用过程中,如有问题或建议,请及时私信沟通,帮助解答。 【2】项目主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 【3】项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 【4】如果基础还行,或热爱钻研,可基于此项目进行二次开发,DIY其他不同功能,欢迎交流学习。 【注意】 项目下载解压后,项目名字和项目路径不要用中文,否则可能会出现解析不了的错误,建议解压重命名为英文名字后再运行!有问题私信沟通,祝顺利! 基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值