git使用说明

前言

在这里插入图片描述
多人协作的一般工作模式:

  1. 试图用git push origin branch-name推送自己的修改;
  2. 如果推送失败,则因为远程分支比本地更新早,需要先用git pull试图合并;
  3. 如果合并存在冲突,则需要解决冲突,并在本地提交,再用git push origin branch-name推送。

配置ssh公钥

1 在控制台输入:

git config --global user.name "用户名"
git config --global user.email "邮箱"

2 查看已配置信息:

git config --global --list

3 执行以下命令生成密钥:

ssh-keygen -t rsa -C "邮箱"

【注】此处输入邮箱是后面为不同账户配置public key的关键,如果仅有一个账户,输入ssh-keygen -t rsa也可生成密钥。
中途需要进行3次或4次确认:

  • 密钥的保存路径,不更改则直接回车
  • 是否覆盖上一次生成的密钥(如果之前已经生成过)
  • 设置密码
  • 确认密码

建议路径使用默认配置,密码不设置,这样每次git push等操作都不需要输入密码,比较方便。若是使用默认路径,将在~/.ssh路径下得到两个文件:id_rsa和id_rsa.pub。

4 添加公钥

在终端输入:

cat ~/.ssh/id_rsa.pub

复制内容粘贴至:以gitee为例,点击右上角头像 --> 设置 --> 安全设置-ssh公钥 --> 添加。

5 测试连接

ssh -T git@gitee.com

在这里插入图片描述

在本地配置多个ssh公钥

【说明】例如需要为gitlab和gitee均配置ssh公钥,且不是同一个账户,如果按照上述方法配置,新配置的密钥将覆盖之前的,造成极大不便,下面的方法将解决该问题。参考

1 生成新的ssh公钥

ssh-keygen -t rsa -C "邮箱"

【注】不要一路回车,修改id_rsa的名字,如修改为id_rsa_gitee(见红色框部分),之后将新生成的密钥复制进对应的位置。
在这里插入图片描述

2 配置config文件

完成上面的步骤后,文件夹目录如下:
在这里插入图片描述
此时仍然无法正常进行clone等操作。

git push -u origin master
git@gitee.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

需要对config文件进行配置:

vim config
#如果没有这个文件直接新建即可

在config文件中添加如下内容:

Host gitee.com
  HostName gitee.com
  IdentityFile "之前生成的id_rsa_gitee的绝对路径,即上面红框的部分"

保存退出,配置完成!

push操作流程

在要进行push操作的本地文件夹下右键“Git Bash Here”。

git init # 初始化仓库
git remote add origin "远程仓库地址,https或者ssh都可以"

# 如果需要切换分支,则执行下面一条命令进行分支切换
git checkout -b "要切换的分支名"

git add .	# 提交当前文件夹的所有文件到缓存区,也可以指定文件名
git commit -m "关于本次push的一些说明"
git pull origin "分支名"
git push -u origin "分支名"	

在这里插入图片描述

问题整理

1 Git bash here报错找不到应用程序

解决方法

2 pull & clone的区别

  git clone是把整个git项目拷贝下来,包括里面的日志信息,git项目里的分支,你也可以直接切换、使用里面的分支等等。git pull相当于git fetch和git merge,其意思是先从远程下载git项目里的文件,然后将文件与本地的分支进行merge。

3 报错 Updates were rejected because the remote contains work that you do

  原因在于本地库与远程仓库的内容不一致(远程仓库有一些内容本地没有),造成该问题的原因一般为push之前没有进行pull操作。

4 报错fatal: refusing to merge unrelated histories

执行如下命令即可:

git pull origin "报错提示的分支名" --allow-unrelated-histories
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值