git介绍:分布式版本控制器 https://git-scm.com/
SSH免密登录
分布式版本控制器相比集中式版本控制器的优点:
- 服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
- 每个客户端保存的也都是整个完整的项目(包含历史记录、更加安全)
git常用命令
命令名称 | 作用 |
---|---|
git config --global user.name 用户名 | 设置用户名 |
git config --global.user.email 邮箱 | 设置用户邮箱 |
git init | 初始化本地库 |
git remote add origin 仓库链接 | 添加仓库链接 |
git status | 查看本地库状态 |
git add 文件名 | 添加到暂存区 |
git commit -m '日志信息' | 提交到本地库 |
git reflog | 查看历史记录 |
git reset --hard 版本号 | 切换版本 |
- 用户名的作用:区分不同操作者的身份,用户签名在每一个版本的提交信息中都能够看到。Git首次安装必须设置一下用户签名,否则无法提交代码。
注意:这里设置的用户签名和将来要登录github或gitee的账号没有任何关系。
-
删除暂存区的文件:
git status
git rm --cached 文件名 -
git add . 表示添加所有文件到暂存器
git add -u 表示将已跟踪文件中的修改和删除的文件,添加到暂存区,不包括新增的文件
git add -A 表示将所有发生修改与删除的文件(包括新增文件),添加到暂存区 -
查看历史版本号
git reflog
68140b0 (HEAD -> master, origin/master) HEAD@{0}: commit (initial): first commit
前面的数字就是精简版的版本号,后面的指针指向的是当前版本,也可以通过git log查看是谁提交的,这个版本号是完整版的版本号。
git log commit 68140b06ffcfcdd3f6c0e516213b1eba9dfdb79f (HEAD -> master, origin/master) Author: 稚子 <[email protected]> Date: Mon Mar 13 09:56:13 2023 +0800 first commit
-
切换版本
git reflog 表示查看所有版本号
git reset --hard 目标版本号
git分支
主要在公司里面用,自己使用一个master分支即可。
分支的好处:同时并行推进多个功能开发,提高开发效率。
分支的操作
命令名称 | 作用 |
---|---|
git branch 分支名 | 创建分支 |
git branch -v | 查看分支 |
git checkout 分支名 | 切换分支 |
git merge 分支名 | 把指定的分支合并到当前分支上 |
- 查看分支
$ git branch -v
* master 2e80f3e second commit
- 创建分支
$ git branch test
User@DESKTOP-BIO8C9N MINGW64 /e/8--嵌入式学习笔记 (master)
$ git branch -v
* master 2e80f3e second commit
test 2e80f3e second commit
- 切换分支
git checkout test
接下来再进行提交,会直接提交到test分支上
git add -A
git commit -m 'branch test'
git push origin test
- 分支合并
首先切换到目标分支上,比如把test合并到master,需要先切换到master,再进行操作
git check out master
git merge test
- 分支冲突合并
需要进行手动修改
github操作
在电脑搜索栏,搜索凭据管理器,可以查看已添加的信任链接
查看仓库连接
$ git remote -v
origin [email protected]:leisure27/embedded-learning-notes.git (fetch)
origin [email protected]:leisure27/embedded-learning-notes.git (push)
ssh免密登录
git使用SSH配置,需要以下三个步骤:
- 使用密钥生成工具生成rsa密钥和公钥
- 将rsa公钥添加到代码托管平台
- 将rsa密钥添加到ssh-agent中,为ssh client指定使用的密钥文件
第一步:检查本地主机是否已经存在ssh key
cd ~/.ssh
ls
如果存在,直接跳到第三步
第二步:生成ssh key
如果不存在ssh key,使用如下命令进行生成
ssh -keygen -t rsa -C "邮箱"
// 执行后一直回车即可(三次),会生成一个公钥,一个私钥
生成完以后再用第二步命令,查看ssh key
第三步:获取ssh key公钥内容(id_rsa.pub)
cd ~/.ssh
cat id_rsa.pub
如下所示,复制该内容,在程序托管平台github或gitee添加公钥
User@DESKTOP-BIO8C9N MINGW64 ~/Desktop
$ cd ~/.ssh
User@DESKTOP-BIO8C9N MINGW64 ~/.ssh
$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC0Thglu/M+mBeb9H8xDTuphhEoMjgz/Jk7n5JdXrNqEP46flRYzjSVSNTxABu/cQThBMBCq2a5S+7kjMxJStHDfH27llmiDA7qONWeWXnSOPiw1QlpruRdJMPIWIpE4tLS8k62FCc3g83zpbVIrSv9cdoWeSHDRYcICKOvTB9IfMgWbTvCB+QAWcxSEyklNLtpONDZ8d/9C+JfCbASQtOZwcgVKFM4pQTgm1njinvkqv/y7F3ElDIG/yP64/MSB1iyyu1dlkaBwcK9HQi8oFdgx3SuXhed7dOcS9sfp4/682SfNzwQm5X9EhXvV3MvONDP5dFAXDta1p16zUHxW0ttcU+YalcZV9gSh8VpUG0wrSSRAdSJbLqYVC9f7xmLd1xHNoBkVSAmSFJT6//sLsLkH2/5NpzAb7hhP+lv/K6j81gzZmMkvpqxlQHatyjasqQ/eIFtuOUJpMg4l0vLlW8bb90gC7CwUw8qDjcWrlrC2qqSMWpUGAexayqz3Xy9118= [email protected]
第四步:验证是否设置成功
ssh -T [email protected]
如果显示以下信息,则表明设置成功
$ ssh -T [email protected]
Hi Leisure27! You've successfully authenticated, but GitHub does not provide shell access.
移除仓库链接
查看当前使用的远程仓库链接
git remote -v
删除对应链接
git remote rm origin
标签:教程,git,rsa,master,ssh,使用,commit,分支
From: https://www.cnblogs.com/leisure27/p/17267028.html