zoukankan      html  css  js  c++  java
  • 第五节:使用TortoiseGit管理Git操作 、IDEA集成Git、使用SSH协议传数据

    一. TortoiseGit的使用

    1. TortoiseGit的下载和安装

     TortoiseGit是一款开源的Git图形界面工具,使用TortoiseGit可以简化Git相关的操作(本质上还是执行的Git相关命令)。

    (1). TortoiseGit下载地址: https://tortoisegit.org/download/

    (2). 安装

        直接全程下一步安装即可。

    (3). 安装完后右键如下图

    2. 各种操作

    (1). 创建仓库(本地仓库)

       在repo6文件进行如下操作:

    (2). 克隆远程仓库

        在repo7下进行如下操作:复制地址到URL中,直接按照原仓库名mytest1克隆下来了。

    (3). 将文件添加到暂存区

      比如在mytest1目录下新建003.txt,然后下图操作,添加到暂存区。

    (4). 提交文件到本地仓库

      比如将003.txt提交到本地仓库,如下图操作,点击Commit按钮,进行提交到本地仓库。

     特别注意:这里可以省略Add添加到暂存区的那一步,直接进行提交到本地仓库。

     另外:可以点击【Commit & Push】按钮,提交到本地仓库的同时,推送到远程仓库(注意这里是将整个本地仓库都提交到远程,而不是单单选中的文件!!!)。

    (5). 推送本地仓库至远程仓库

         比如在myTest下新建009.txt,然后把他提交到本地仓库,然后推送到远程仓库,推送远程仓库的步骤如下:

    (6). 拉取代码(Pull)

      比如我在码云上修改了001.txt的内容,然后删除了002.txt,现在我要同步到本地仓库并且同步到工作区间,如下图操作:

    PS:这里也可以先Fetch拉取到本地仓库,然后再Merge同步到工作区间。

    比如我在码云上修改002.txt内容,然后Fetch到本地仓库,此时工作区间的002是没有修改的,然后再Merge进行合并,工作区间里的002就同步修改了

    (7). 切换分支

      比如从master分支切换到b1分支,如下图:

    (8). 创建分支

     比如我基于b1分支,创建一个b2分支,首先要先切换到b1分支,如上面的步骤7,然后创建一个b2分支,如下图:(最后创建完后,需要手动切换一下,默认还是在b1分支下)

    (9). 合并分支

    比如我修改b2分支下的002.txt 并且 新增一个101.txt文件,然后我想把b2分支合并到master分支里。 

    A.  修改002.txt内容,创建一个101.txt文件,同步到本地仓库中master分支里。

    B. 然后再本地切换到master分支,进行b2分支的合并。

    C. 这个时候发现101.txt直接合并进来了,但是001.txt有冲突。 这时候要编辑冲突,选择合适的版本进行合并。

    D. 直接选择【Commit & Push】按钮,将master分支里的内容推送到本地仓库,并且同步到远程仓库。

    此处还需要补充一下:本地仓库删除恢复的问题  、 直接从远程pull拉取到本地某个固定文件夹(注意,不是clone,可以单分支,和所有分支等等)

    二. IDEA集成Git

    1. IDEA中配置Git

     打开IDEA→Settings→Version Control → Git,如果Git安装在默认目录,会自动映射一下,否则需要自己配置一下

    2. 常用操作

    (1). 给本地项目创建Git仓库

    (2). 文件添加到暂存区

    (3). 文件提交到本地仓库

    (4). 将代码推送到远程仓库

    PS:如何将之前保存的多个Push远程地址删除呢?

    (5). 从远程仓库克隆项目到本地

    (6). 从远程拉取Pull代码

    (7). 版本对比

    (8). 创建分支

    (9). 切换分支

    (10). 合并分支 

     

    三. 使用SSH协议传输

    1.Git传输协议

     由于Git的远程仓库并不在我们本地,当我们在使用远程仓库的时候(例如克隆、拉取、推送)就会涉及到数据的网络传输,Git支持多种数据传输协议

      (1). 本地协议(Local)

      (2). HTTPS 协议

      (3). SSH(Secure Shell)协议

      (4). Git 协议

     我们前面的操作都是基于HTTPS协议进行的,基于账号密码来做认证。

     

    2. 什么是SSH协议

      SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。由于本地Git仓库和远程仓库之间的传输是通过SSH加密的,所以必须要让远程仓库服务器认证你的SSH key,在此之前,必须要生成SSH key。

      使用ssh协议通信时,推荐使用基于密钥的验证方式。你必须为自己创建一对密匙(公钥和私钥),并把公匙放在需要访问的服务器上

     如果不配置公钥和私钥,直接用SSH的地址进行Clone,会报错,如下图:

    3. 配置SSH协议

    (1). 在任何目录下右键选择 Git Bash进入命令行,使用命令 【ssh-keygen -t rsa】生成公钥和私钥,执行完成后在window本地用户.ssh目录  C:Users用户名.ssh  下面生成如下名称的公钥和私钥

    PS:命令行中一路敲回车,不需要输入内容

     (2). 复制公钥里面的内容到码云

     (3). 复制SSH地址,重新进行Clone,clone成功。

     

    PS:如果要用TortoiseGit进行SSH传输,上述步骤不行,自行百度吧,这里不再补充了。

    !

    • 作       者 : Yaopengfei(姚鹏飞)
    • 博客地址 : http://www.cnblogs.com/yaopengfei/
    • 声     明1 : 如有错误,欢迎讨论,请勿谩骂^_^。
    • 声     明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
     
  • 相关阅读:
    好文转贴(1) —— 程序员已死 & 程序员平庸or伟大,证据就在代码里&一些鲜为人知的编程事实
    django的两个学习资料
    django的两个学习资料
    POJ2418(BST)
    全局变量、函数原型和Guard macro
    POJ2754(八皇后)
    VC中Windows常用控件的创建和使用
    POJ1088(DP,DFS)
    超前引用
    POJ2715(Water)
  • 原文地址:https://www.cnblogs.com/yaopengfei/p/14945185.html
Copyright © 2011-2022 走看看