git使用教程
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: 稚子 <1973688584@qq.com> 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 git@gitee.com:leisure27/embedded-learning-notes.git (fetch) origin git@gitee.com: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= 1973688584@qq.com
第四步:验证是否设置成功
ssh -T git@github.com
如果显示以下信息,则表明设置成功
$ ssh -T git@github.com Hi Leisure27! You've successfully authenticated, but GitHub does not provide shell access.
移除仓库链接
查看当前使用的远程仓库链接 git remote -v 删除对应链接 git remote rm origin
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码