Git Gui、Ssh key的使用和ideaui配置使用Git解决冲突(下)

目的:

1、Git Gui的使用

2、Ssh key 介绍及使用

  2.1 小结:https SSH 的区别

3、Idea配置使用并使用git

4.ideaui使用Git冲突问题解决


Git Gui的使用

  Git的下载路径和资料请看上一篇博客

https://www.cnblogs.com/huangting/p/11684508.html

  汉化破解资料:

链接: https://pan.baidu.com/s/1RJ2zoS0AcRW_wGBKplnjGg 提取码: e4ff

在任何地方鼠标右键选择Git Gui就可以了

提交完了还只是放入暂时缓存区,我们需要上传到远程仓库中


Ssh key 介绍及使用

 Ssh key介绍

对于SSH详情了解可以去看看这个:http://www.findme.wang/blog/detail/id/258.html

  每台电脑上会产生出一个ssh key,然后自己有一个远程账户,但是自己有可能有很多台电脑,

   包括家里的电脑还有公司的电脑,我们可以在任意一台电脑上工作,但是如果想要每台电脑都和远程版本库时刻保持着通讯,

   就需要将每台电脑的ssh key添加到远程账户,添加到远程版本库之后,远程版本库就会和已经添加的电脑进行通讯而不会和其他电脑进行通讯

 建议:所有的Git操作都通过ssh key进行,因为简单

Ssh key配置

  第一步:本地电脑配置

  右键空白处,选择Git Bash Here打开相关命令窗口

   1.配置用户名和邮箱(如果已经配置,就跳过)   

git config --global user.name "username"  --引号中自定义

git config --global user.email "email"

     之后就会在C:UsersAdministrator下创建一个.gitconfig文件

  注意:

  • usernameemailgithub的登陆帐号和注册邮箱
  • git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置

1.1:检查下自己之前有没有已经生成ssh

  cd ~/.ssh

  证明有ssh存在

   cd ~/.ssh命令执行后窗口返回“no such file or directory”的时候,表示我们的电脑并没有ssh key,所以需要我们创建ssh ke

 ssh-keygen -t rsa -C "xxx@xx.com"   --创建.ssm文件,如果没有这个文件执行即可,接着按三个回车即可。 

注意:如果本地有ssh,执行以上命令会出现正面的提示,这里选择y,表示覆盖本地的ssh key,其实也就是ssh秘钥删除的意思

  

执行命令完成后,默认会在windowC:UsersAdministrator.ssh下面生成如下两个名称的文件:

     C:UsersAdministrator.ssh

       id_rsa(私钥,不能泄露出去)

       id_rsa.pub(公钥)

       known_hosts(不用管)

 第二步:远程github仓库配置

1.登陆到自己的gitbub,点击右上角的倒立小三角形。选择 settings

   2.选择SSH and GPG keys

   3.点击右边的New SSH key

 4.随意填入一个title,然后 key 中粘贴刚才复制的id_rsa.pub文本,点击 Add key 这样就大功告成

   5.github官网有时候会要你输入登陆密码才能添加ssh key。输入密码即可

 4.随意填入一个title,然后 key 中粘贴刚才复制的id_rsa.pub文本,点击 Add key 这样就大功告成

   5.github官网有时候会要你输入登陆密码才能添加ssh key。输入密码即可

 

成功

第四步:测试SSH连接

  1.输入测试命令

    ssh -T git@github.com

        如果显示如下内容,表示ssh key添加成功:

       Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

https 和 SSH 的区别

1.前者可以随意克隆github上的项目,而不管是谁的;

  而后者则是你必须是你要克隆的项目的拥有者或管理员,需要先添加 SSH key ,否则无法克隆。

2.https url push的时候是需要验证用户名和密码的;而 SSH push的时候,是不需要输入用户名的;

  如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。

3.Git协议push远程仓库不需要填写github账号密码,操作更加方便。

如果没有在github的官网上配置ssh key的公钥


Idea配置使用并使用git

idea中配置Git

   1.设置git.exe的安装路径

     点击菜单File->Settings->Version Control->Git”,设置Path to Git executable的值为:

  

2.设置Github帐号

     点击菜单Settings->Version Control->Github

 idea中使用Git

1.创建本地仓库

    VCS-->Import into Version Control-->Create Git Repository...

这里就用java项目来简单测试一下

  

写一个测试类Dome

package com.huangting;

/**
 * @author 黄大娘
 * @company dogsun
 * @oreata 2019-10-17 20:33
 */
public class Dome {
    public static void main(String[] args) {
        System.out.print("git ideaui test");
    }
}

2.上传项目到本地仓库,项目右键选择Git-->add,此时项目文件变成绿色,此时文件只是处于暂存区,并没有真正进入到版本库(本地)

  

  3.项目右键Git--> Commit Directory,在弹窗中输入Commit Message,点击commit,此时项目文件从暂存区真正进入版本库(本地)中,项目文件变成白色

    1:在弹窗中输入Commit Message,也可以点击commit and push,会同时提交到本地库和代码托管网站

  4.上传项目到GitHub中,VCS-->Import into Version Control-->Share Project on GitHub,在弹框中输入仓库名和描述,点击Share,即可是上传,

将本地仓库同步到远程仓库(这里不需要预先在github上建立,再做关联,与命令的方式有所不同

 

去远程仓库上查看有没有


ideaui使用Git冲突问题解决

冲突问题的出现就是两台电脑同时修改一个文件,电脑A修改以后并且提交成功,但是电脑B并不知道,所以在提交时发生冲突

首先模拟一下两个人都有同一个项目的场景;

将远程仓库克隆到本地,成为本地仓库

  

新增一个文件夹t224_ideaht来作为宁另一个仓库

去远程仓库中获取ssh

 

克隆成功。。

在两个仓库中同时修改同文件的代码,并且t224_ideaht push到远程仓库中

然后t224_idea也要提交但是发生冲突

点击Merge

点击中间的红箭头,两边都点会自动合并代码。

点击apply,意味着代码已经到了本地仓库;要提交到远程仓库,在做push操作;

谢谢观看!

原文地址:https://www.cnblogs.com/huangting/p/11690796.html