git使用中遇到的一些问题

文章目录

  1. 合并分支。有时候会需要合并远程分支,倘若这时候本地没有要提交到东西,然后直接合并其它远程分支。合并完需要提交下当前分支,因为本地没有修改所以提交不了。这是因为代码已经commit了,这时候只需要执行git push命令即可。

  2. GitHub无法访问、443 Operation timed out的解决办法。这里如果使用的是https的方式的换换成ssh的方式访问。参考链接如下:
    https://www.zhihu.com/question/401499640

  3. 如果生成sshkey后,也配置完了,但是一直提示权限拒绝,那么可能是本地环境只是生成了sshkey,但是没有添加到电脑里,参考以下链接解决方式:
    https://blog.csdn.net/ywl470812087/article/details/104459288

  4. 查看sshkey的命令可以使用 cat命令,这里举另外个链接进行参考
    https://blog.csdn.net/loner_fang/article/details/80488385

  5. fatal: refusing to merge unrelated histories
    执行 git 合并分支时候出现该提示。这时候使用命令行执行以下操作

git merge dev --allow-unrelated-histories

参考一下链接进行解决:
https://www.cnblogs.com/jinbang/p/8920252.html
6. 默认的合并方式是快速合并,可以采取以下安全的合并方式,先创建临时节点
https://www.cnblogs.com/gavincoder/p/9071959.html
7. 参考gitee的使用ssh方式
https://gitee.com/help/articles/4181#article-header0
8. 创建多个ssh:
https://www.cnblogs.com/wtq12138/p/15807696.html
https://gitee.com/help/articles/4229#article-header0
10. 如果第一次提交的用户信息和远端不一样,这时候再次进行修改用户信息,再次提交还是会错误的,需要使用reset重置会上次的提交记录,然后重新执行commit、push流程,也可以项目删了,直接重新修改用户信息提交。
11. git的安装
在Mac上安装通常会用到第三方安装工具,倘若直接下载源文件安装也可以,以下是链接:
https://git-scm.com/download/mac
选择Binary installer 这个选项后下载,然后安装。
安装完后,需要找到安装的路径用来在开发工具中配置,系统默认是可以使用命令行的,使用以下命令查找位置:

which git
  1. 这里记录下ssh-keygen 的可选参数
为ssh生成、管理和转换认证密钥,ssh-keygen命令 用于为“ssh”生成、管理和转换认证密钥,它支持RSA和DSA两种认证密

SSH 密钥默认保留在 ~/.ssh 目录中。 如果没有 ~/.ssh 目录,ssh-keygen命令会使用正确的权限创建一个。

命令语法

ssh-keygen [选项]

命令选项

-b:指定密钥长度;
-e:读取openssh的私钥或者公钥文件;
-C:添加注释;
-f:指定用来保存密钥的文件名;
-i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
-l:显示公钥文件的指纹数据;
-N:提供一个新密语;
-P:提供(旧)密语;
-q:静默模式;
-t:指定要创建的密钥类型。
基本示例

以下 ssh-keygen 命令默认在 ~/.ssh 目录中生成 4096 位 SSH RSA 公钥和私钥文件。 如果当前位置存在 SSH 密钥对,这些文件将被覆盖。

> ssh-keygen -m PEM -t rsa -b 4096
使用ssh-kengen会在~/.ssh/目录下生成两个文件,不指定文件名和密钥类型的时候,默认生成的两个文件是

id_rsa 第一个是私钥文件
id_rsa.pub 第二个是公钥文件
指定秘钥文件路径

> ssh-keygen -t rsa -C 'rumenz@qq.com' -f ~/.ssh/github_id_rsa
或者,在指定存放文件时输入一个新的文件名

> Enter file in which to save the key(/Users/rumenz/.ssh/id_rsa):id_rsa_gitlab
多个SSH key的管理的情况就需要指定秘钥文件名。

如果根据gitee的创建单个方式来生成ssh-key的话,生成的文件名字是默认的,因为没有指定文件名字,所以使用这个命令就无法创建多个ssh-key。在第8条链接中对ssh的描述有问题,config文件不是必选的。不过创建完ssh-key后有时候需要进行添加,这里执行以下命令(注意有两个文件id_rsaid_rsa.pub,名字是默认的,如果自己没有填写的话):

ssh-add ~/.ssh/id_rsa

如果出现Identity added: /Users/ym/.ssh/id_rsa (id_rsa) 表示添加成功。

  1. 关于ssh中全局config文件对说明,可以部分参考下以下链接:
    使用 Ed25519 算法生成你的 SSH 密钥
    参考链接:
    1、 git reset 命令
    2、Git 问题与解决方法
    3、git 提交解决本地与远程冲突
    4、git push 报错 —error: commit 8aa8e31: email address yin.jiaqing@…com is not registered in your
    5、git - 简明指南
    6、git-教程
    7、git-官方文档
    8、git-命令速查pdf
    9、git-命令速查
    10、Mac安装Git
    11、linux之ssh-keygen命令
    12、GitCode / 帮助文档 / SSH
    13、git 忽略已加入到版本库的文件
    14、git 忽略已加到版本库的中的文件或文件夹
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值