Git 学习总结(1) --- 为什么学Git、Git简介、下载和安装

Git 学习总结(1) — 为什么学Git、Git简介、下载和安装

1. 为什么学Git?

如果你用Microsoft Word写过长篇大论,那你一定有这样的经历:

想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的Word文件,再接着改,改到一定程度,再“另存为……”一个新文件,这样一直改下去,最后就有一大堆的word文档。各种修改版本。

然后过了一段时间,你想找回被删除的文字,但是已经记不清删除前保存在哪个文件里了,只好一个一个文件去找,真麻烦。

看着一堆乱七八糟的文件,想保留最新的一个,然后把其他的删掉,又怕哪天会用上,还不敢删,真郁闷。这时候你会崩溃…

如果一个团队协同开发一个网站,总共就一个代码,很多人要去共同开发,大家各自修改自己的部分,然后就会有各种各样的版本,五花八门到无法管理,这时候大家就都疯了…

  • 针对这个问题,解决方案有集中式处理和分布式处理。

    • 集中式处理:

      ​ 每个人修改完毕,就提交到一个大家都能访问到的服务器;

      ​ 每个人要增加或者修改代码,需要同服务器上拿来最新的代码;

      ​ 修改完毕后,再次提交,保证服务器中有最新的代码;

    • 分布式处理:

      ​ 每个人写完代码后,立马将更新的东西告知所有人;

      ​ 每个人都拥有全部的代码;

      ​ 每个人都是一个独立的服务器代码库;

      ​ 假设一个人的代码丢了,直接从别人那个拷贝一份即可;

  • 分布式 VS 集中式

    • 分布式:开源项目

      不会被服务器限制

      所有人可以拿到最新的源代码

      不安全。

    • 集中式:公司内部项目

      只有一个公共的服务器

      所有人写代码之前,需要去拿最新的代码过来

      写完之后,要及时提交代码到服务器

      安全。

于是你想,如果有一个软件,不但能自动帮自己记录每次文件的改动,还可以让同事协作编辑,这样就不用自己管理一堆类似的文件了,也不需要把文件传来传去。如果想查看某次改动,只需要在软件里瞄一眼就可以,岂不是很方便?

2. Git简介

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

  • linux最初只有 Linus Torvalds一个人维护,后来慢慢越来越多的人加入修改的建议,提交代码;
  • 所有人的代码,都从世界各地发给他,由他一个人编写进Linux内核中。他慢慢的就烦了。
  • 找一个可以进行版本控制的平台 ; BitKeeper 免费的给Linux社区使用;
  • Linux社区中存在许多大佬,他们试图破解BitKeeper协议;BitKeeper就不愿意再免费给他们使用了;
  • 于是乎 Linus ,他花了两周时间,用c自己写了一个版本控制的管理系统,而且是分布式的;
  • 这就是后来大名鼎鼎Git ;
  • 后来有人基于个Git搭建了开源的平台 , Github 开源所有人都可以去使用的
  • 我们也可以搭建自己的版本库—GitLib。
  • 2019年,在中国的今天,我们选择使用 码云 Gitee 来作为项目源代码存放的地方
    • 不受网络的限制
    • 国人开发
    • 社区十分活跃
  • 类似的平台还有Coding等等。

2.1 Git的特点

  • Git 是世界上最先进的分布式版本控制系统;是免费的,开源的

  • Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

  • Git vs SVN:

    SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

3. Git的下载与安装

  • 百度搜索Git官网,找到DownLoad点击选择对应的版本(windows/linux)下载即可。官网下载十分慢。

    官网下载网址:https://git-scm.com/downloads
    在这里插入图片描述
    在这里插入图片描述
    可以镜像下载,推荐。百度搜索Git镜像下载,选择下载版本,

    镜像下载地址:http://npm.taobao.org/mirrors/git-for-windows/ 【推荐】

  • 双击安装程序“Git-2.10.2-64-bit.exe”,进行安装,傻瓜式安装。安装步骤详解。

    【注意】选择Git使用的默认编辑器时选择自己电脑上有的编辑器,建议使用 Notepad++ 作为 Git 的默认编辑器。
    在这里插入图片描述

  • 双击git-bash.exe运行Git。ctrl+鼠标滚动条—>可调节窗口字体大小
    在这里插入图片描述

4. Linux常用命令

命令字命令功能
pwd查看当前所在目录
cd切换文件夹
cd \thicksim切换到用户所在目录
cd/切换到根目录
ls列出清单
ls -a列出所有 list all
cd Desktop进入桌面
clear清空屏幕
mkdir创建文件夹
rm -r 文件夹名/文件名删除文件夹/文件
touch 文件名创建文件
echo 内容 > 文件名写入内容
history查询历史
–help查看命令帮助文档

更多的命令可在官网查询。

5. Git设置用户名和邮箱

git 安装完之后的第一步就是设置用户名和邮箱,相当于一个标识,你之后的每一次提交项目,都会附带这个信息。必须要配置这两个属性

git config --global user.name"wangxiao"
git config --global user.email 420273293qq.com
 git config -l  # 查看git的全部配置
 git config --global --list #查看当前用户的配置

git 配置文件存放地址:

  • 用户配置的global文件。 c盘:/用户/${当前用户}/ .gitconfig ,如我的在C:\Users\yyyy\.gitconfig
    在这里插入图片描述

  • 系统配置文件; \Git安装路径下面\mingw64\etc\gitconfig
    在这里插入图片描述

    git config --system --list    //查看系统文件
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。在编写C程序,需要注意变量的声明和定义、指针的使用、内存的分配与释放等问题。C语言中常用的数据结构包括: 1. 数组:一种存储同类型数据的结构,可以进行索引访问和修改。 2. 链表:一种存储不同类型数据的结构,每个节点包含数据和指向下一个节点的指针。 3. 栈:一种后进先出(LIFO)的数据结构,可以通过压入(push)和弹出(pop)操作进行数据的存储和取出。 4. 队列:一种先进先出(FIFO)的数据结构,可以通过入队(enqueue)和出队(dequeue)操作进行数据的存储和取出。 5. 树:一种存储具有父子关系的数据结构,可以通过中序遍历、前序遍历和后序遍历等方式进行数据的访问和修改。 6. 图:一种存储具有节点和边关系的数据结构,可以通过广度优先搜索、深度优先搜索等方式进行数据的访问和修改。 这些数据结构在C语言中都有相应的实现方式,可以应用于各种不同的场景。C语言中的各种数据结构都有其优缺点,下面列举一些常见的数据结构的优缺点: 数组: 优点:访问和修改元素的速度非常快,适用于需要频繁读取和修改数据的场合。 缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大可能导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 缺点:访问和修改元素的速度相对较慢,因为需要遍历链表找到指定的节点。 栈: 优点:后进先出(LIFO)的特性使得栈在处理递归和括号匹配等问题非常方便。 缺点:栈的空间有限,当数据量较大可能导致栈溢出。 队列: 优点:先进先出(FIFO)的特性使得

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值