在Visual Studio 中使用git——什么是Git(一)

  • A+
所属分类:.NET技术
摘要

         写程序必然需要版本控制,哪怕是个人项目也是必须的,微软从Visual Studio 2019开始默认提供了对Git的支持,Visual Studio 2019之前的版本可以安装相应的插件来实现Git功能。首先要区分下Git和GitHub,前者是指一种版本控制软件,各个大厂可以有自己的具体实现。后者其实是指GitHub这个网站,它使用Git来提供代码托管的服务。除了github这个网站外,国内有个gitee提供代码托管服务的网站。

 

       写程序必然需要版本控制,哪怕是个人项目也是必须的,微软从Visual Studio 2019开始默认提供了对Git的支持,Visual Studio 2019之前的版本可以安装相应的插件来实现Git功能。首先要区分下Git和GitHub,前者是指一种版本控制软件,各个大厂可以有自己的具体实现。后者其实是指GitHub这个网站,它使用Git来提供代码托管的服务。除了github这个网站外,国内有个gitee提供代码托管服务的网站。

 

第一部分:Git是什么?

      Git是目前世界上最先进的分布式版本控制系统。Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。下面先用图来介绍 一下Git的工作原理 :

 在Visual Studio 中使用git——什么是Git(一)

 

     一、工作与操作流程

      在使用前先来了解一下Git的工作流程,是很有必要的一件事,下面是Git的工作流程和如何使用Visual Studio 中的git进行操作的图解:

    1Git工作流程

 在Visual Studio 中使用git——什么是Git(一)

     2、Git操作过程图解

 在Visual Studio 中使用git——什么是Git(一)

      3 Git中常见名词解释

    拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Meger)

 获取(Fetch):从远程版本库获得最新版本
 合并(Meger):将两个版本库进行合并操作
 提交(Commit):将所做的更改,存入本地暂存库
 推送(Push):将所做的更改,存入远程版本库
 同步(Pull+Push):先将远程库拉取,再将本地库推送到远程库,相当于(Pull+Push)
  变基到(Switch):切换分支(双击即可切换)

 

     二、 Windows上安装Git

    1. 一般我们工作的电脑都是Windows系统,要使用git首先要进行安装。从官网的https://git-scm.com/downloads下载页面中下载git的windows安装包。如下图。

 在Visual Studio 中使用git——什么是Git(一)

    2. 浏览器将跳转到下载安装包页面。如下图。

 在Visual Studio 中使用git——什么是Git(一)

    3. 在下载目录中找到刚才下载的文件Git-2.30.0.2-64-bit.exe,使用鼠标双击,然后默认安装即可。

    4. 如果你从官网地址下载特别慢,所以用的是淘宝的镜像https://npm.taobao.org/mirrors/git-for-windows中选择合适的版本下载。

     我使用的是windows 10 +git 2.26.2-64-bit.exe (https://npm.taobao.org/mirrors/git-for-windows/v2.26.2.windows.1/Git-2.26.2-64-bit.exe

    5.安装成功之后,在开始菜单里面找到 "Git --> Git Bash",如下图。

 在Visual Studio 中使用git——什么是Git(一)

     6.或者在桌面右键,也可以看到:

 在Visual Studio 中使用git——什么是Git(一)

    7.对于上面的两个菜单项,简单说明一下,其中GUI为用户界面模式,Bash为命令行模式。

    8.在操作系统Windows 10的开始菜单中直接输入“git”,会出现以下应用程序选项。如下图。

  在Visual Studio 中使用git——什么是Git(一)

    9. 使用鼠标点击“Git Bash”,会弹出一个类似的命令窗口的东西,就说明Git安装成功。如下:

 在Visual Studio 中使用git——什么是Git(一)

 

三、SVN与Git的最主要的区别?

         SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后再写代码,在写完代码并编译通过之后,需要把自己的代码文件推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

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

 

四、理解工作区与暂存区的区别?

       工作区:就是你在电脑上看到的目录,比如目录下WpfAppGit里的文件(.git隐藏目录版本库除外)。或者以后需要再新建的目录文件等等都属于工作区范畴。

       版本库(Repository):工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区),还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。