git:TortoiseGit入门

TortoiseGit其实是一款开源的git的版本控制系统,也叫海龟git。TortoiseGit提供了人性化的图形化界面,不用像Git一样输入许多语句,像git init、git add、git commit这些语句就通通不用记了。轻松使用鼠标,就可以完成代码的提交和上传。

安装

前提:

  • 安装 TortoiseGit,必须先安装完成 git并将其配置好。
  • 因为TortoiseGit 只是一个程序壳,必须依赖一个 Git Core,所以安装前请确定已完成git安装和配置。

下载TortoiseGit,他的程序和语言包是分开的,两个都下载。

在这里插入图片描述

安装顺序:

  • 先安装 TortoiseGit 程序包
    • 双击刚才下载完的TortoiseGit,一直默认点击next即可
  • 然后安装语言包(LanguagePack)。
    • 安装完毕后,会让选择语言,别关闭
    • 这个时候可以【再把语言汉化包安装完】,刷新后出现中文简体语言。
      在这里插入图片描述
      安装完语言包之后:
  • 会进行首次启动向导
    在这里插入图片描述
  • 然后是弹出 git 的安装地址:(一般情况下会自动检索出 git 的安装路径)
    在这里插入图片描述
  • 安装过程中需要填写个人 git 账号以及邮箱,此时我们注册github账号时的用户名和邮箱和有用处了。
    在这里插入图片描述
    至此,TortoiseGit算是安装完成了!

使用

什么是git仓库

Git作为一个分布式版本控制系统,其优点是不需要一直连接**远端版本库(仓库)**就可以使用。故其为实现分布版本控制专门设计了一整套的存储区间和语句,用以实现。

什么是git仓库

每个git项目目录下都有一个仓库,仓库就是git存放需要保存的快照的数据的地址
在这里插入图片描述

分类

git仓库分为远程数据库(版本库/仓库)和本地数据库(版本库/仓库)两种:

  • 本地版本库:
    • 建立在本机磁盘上的文件夹 .git :为了方便用户个人使用,在自己的机器上配置的数据库。
    • 我们必须在本地有一个git仓库,才能在使用git来管理项目
      • 平时我们是在本地数据库上工作
      • 如果想要公布本地仓库修改的内容,可以通过推送语句语句将本地内容上传/替换远程仓库中
        - 通过检出语句创建/切换工作区的分支。
  • 远程版本库:
    • 建立在远程服务器磁盘上的文件夹:配有专用的服务器,为了多人共享而建立的数据库。
    • 通过克隆语句将远程版本库中的代码完整的下载/替换到本地版本库。
    • 通过拉取语句将远程版本库中与工作区中不同的文件进行更新。

本地版本库和远程版本库没有本质上的区别。区别是本地版本库中有.git版本库文件夹,里面存放着本地版本库的配置等。
在这里插入图片描述

  • 工作区:本地版本库.git存在的目录就是工作区。
    • 通过添加语句,将本地仓库没有/更改的文件放到暂存区域。
  • 暂存区:在.git本地版本库中一个文件,暂时存储来自工作区提交的更改和添加文件。
    • 通过提交语句,将暂存的更改和添加应用到本地版本库。

在物理层面上:

  • 本地版本库实际上就是.git文件
  • 暂存区则是.git文件夹中一个文件index。
  • 工作区是包含本地版本库.git文件夹的文件夹。工作区包含本地版本库包含暂存区。

工作流程

Git的流程分为一个大循环和一个小循环。工作区就是我们一开始文件所存在的区域,然后选择添加文件后,文件就进入了暂存区,选择提交文件后,文件就进入了本地仓库,这是一个小循环。当从远程仓库拉取代码时,代码会直接拉取到工作区,然后我们要添加、提交,然后才可以把拉取的代码放入本地仓库,本地仓库的代码可以通过推送,推送到远程仓库,这是一个大循环。
在这里插入图片描述

创建git仓库

创建本地仓库

本地拥有一个git仓库的途径有两种:

  • 将尚未进行版本控制的本地目录转换为git仓库 (git init)
  • 从其他服务器克隆一个已经存在的git仓库 (git clone)

两种方式都会在你的本地机器上得到一个工作就绪的git仓库
在这里插入图片描述

使用Git GUI创建

  • 选择一个空的文件夹。
  • 右键选择"Git GUI Here"。
  • 点击"Create New Repository"。
  • 点击"Browse"选择创建本地库的文件夹,默认为当前文件夹,点击"Create",创建完成。

使用TortoiseGit创建

  • 选择一个空的文件夹。
  • 右键选择"Git 在这里创建版本库"。
  • 如果要不创建私有Git库,就不要勾选"制作纯版本库",点击确定,创建完成。

使用Git Bash创建

  • 选择一个空的文件夹。
  • 右键选择"Git Bash Here"。
  • 输入: git init ,创建完成。

在这里插入图片描述

搭建私有Git版本库

有些为了保护代码而需要创建局域网内的远程版本库,就在作为远程版本库的主机上新增访问用户,然后创建纯版本库。通过IP和登陆用户,就可以使用远程版本库。

使用Git Bash创建

  • 选择一个空的文件夹。
  • 右键选择"Git Bash Here"。
  • 输入: git init --bare ,就创建了一个纯版本库。

使用TortoiseGit创建

  • 选择一个空的文件夹。
  • 右键选择"Git 在这里创建版本库"。
  • 勾选"制作纯版本库",点击确定,创建完成。
    在这里插入图片描述

创建远程版本库

使用GitHub创建

GitHub是基于Git的超大开源项目库,很多知名的开源项目都保存在上面,提供开发者使用和学习。免费提供了开源项目远程版本库的创建和使用服务,如果需要创建私有库,则需要升级为付费账号。使用GitHub创建远程版本库的前提是需要有一个GitHub的账号,因为是全英文的,对英语不好的可能会有比较吃力,而且GitHub的服务器在境外,所以访问和使用的速度都比较慢。对于这两方面不方便的可以使用开源中国提供的码云:https://gitee.com/ ,而且码云提供5人以内的免费私有库,对于网速和汉语要求的来说还是很友善的,操作跟GitHub也差不多,就不赘述了。

  • 登陆GitHub,点击右上角的"+“,选"New repository”。

在这里插入图片描述

  • 第一个空填项目名,第二个空填项目介绍。
    在这里插入图片描述
  • 选择开源项目或者私有项目,私有项目需要付费账户。

在这里插入图片描述

  • 如果勾选,则会创建的项目中自带一个README文件,建议选择。
    填写好后,点击"Create repository",即可创建一个空的远程版本库

在这里插入图片描述

说明: git init

如果你有一个尚未进行版本控制的项目目录,想要用git来控制它。那么首先需要进入该项目目录中,然后执行git init

$ cd test
$ git init 
初始化空的 Git 版本库于 /home/oceanstar/workspace/test/.git/
$ ls -a
.  ..  .git
  • 从上面可以看出,git init将会创建一个名为.git的子目录,这个子目录含有你初始化git仓库中所有的必须文件,这些文件是git仓库的骨干。
  • 但是,在这个时候,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。
  • 如果在一个已经存在文件的文件夹(而非空文件夹)中进行版本控制,你应该开始跟踪这些文件并进行初始化提交。可以通过git add命令来指定所需的文件来进行追踪,然后执行git commit
$ git add *.c         # 添加文件或目录到索引
$ git add LICENSE       # 添加文件或目录到索引
$ git commit -m 'initial project version'  #提交追加到索引的文件
  • 现在,你已经得到了一个存在被追踪文件与初始提交的git仓库

简而言之,用 git init 来在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做,完全是本地化的。

克隆代码

git clone详解

  • 如果你想获得一份已经存在了的 Git 仓库的拷贝,这时就要用到 git clone 命令
  • 当你执行 git clone 命令的时候,默认配置下远程 Git 仓库中的每一个文件的每一个版本都将被拉取下来。比如
// 默认情况下,会在当前目录下创建一个名为”libgit2“的本地项目目录
$ git clone https://github.com/libgit2/libgit2

// 在克隆远程仓库的时候,自定义本地仓库的名字
$ git clone https://github.com/libgit2/libgit2 mylibgit
  • 进入libgit2目录:

    • 有一个已经初始化一个了.git文件夹:从远程仓库拉取下所有数据都会放入.git文件夹,然后从中读取最新版本的文件的拷贝
    • libgit2文件夹下所有的项目文件已经在里面了
  • 默认拉取主分支(不包含其他分支),如果想要其他分支(不包含子分支和子分支的子分支)

git clone -b develop http://10.1.1.11/service/tmall-service.git
  • 如果你想从远程仓库中拉取一条本地不存在的分支时,使用git checkout -b 本地分支名 origin/远程分支名, 这个将会自动创建一个新的本地分支,并与指定的远程分支关联起来
$  git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/develop
  remotes/origin/master

$ git checkout -b develop remotes/origin/develop
Switched to a new branch 'develop'
Branch 'develop' set up to track remote branch 'develop' from 'origin'.

如果出现提示:

fatal: Cannot update paths and switch to branch 'dev2' at the same time.
Did you intend to checkout 'origin/dev2' which can not be resolved as commit?

表示拉取不成功。我们需要先执行

git fetch

然后再执行

git checkout -b 本地分支名 origin/远程分支名

Git 支持多种数据传输协议。 上面的例子使用的是 https:// 协议,不过你也可以使用 git:// 协议或者使用 SSH 传输协议

简而言之,使用 git clone 拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。

git 拉取远程指定分支 pull本地不存在的分支

使用TortoiseGit创建

  • 我们首先找一个文件夹存放我们准备克隆的仓库(该文件必须得是空白文件夹)。然后鼠标右键选择TortoiseGit,再点击Clone(克隆)
    在这里插入图片描述

  • 此时会弹出一个操作框,我们得先去github上把你准备要克隆仓库的地址拷贝下来,然后复制粘贴上去,再点击OK即可。

在这里插入图片描述

  • 在文件夹上可以看到如下:

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值