Git基础使用

Git

要想了解Git,首先需要我们了解一下VCS------版本控制系统(version control system)

VCS

版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件,而且可以对任何类型的文件进行版本控制。

有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你可以比较文件的变化细节,查出最后是谁修改了哪个地方。也就是无论文件最后被修改成什么样子,你都可以轻松恢复到原先的样子,但是额外增加的工作量却微乎其微。

git区域

  • 存储区域:Git软件⽤于存储资源得区域。⼀般指得就是.git⽂件夹
  • ⼯作区域:Git软件对外提供资源得区域,此区域可⼈⼯对资源进⾏处理。
  • 暂存区:Git⽤于⽐对存储区域和⼯作区域得区域。Git根据对⽐得结果,可以对不同状态得⽂件执⾏操作。

git配置邮箱和⽤户

第⼀次使⽤Git软件,需要告诉Git软件你的名称和邮箱,否则是⽆法将⽂件纳⼊到版本库中进⾏版本管理 的。这是因为在多⼈协作时,不同的⽤户可能对同⼀个⽂件进⾏操作,所以Git软件必须区分不同⽤户的 操作,区分的⽅式就是名称和邮箱。 git配置邮箱和⽤户

git使用基础命令

初始化:

git init

克隆:

git clone url
git clone url 新项目名

配置

//配置单个仓库
git config user.name xxx
git config user.email xxx@xx.xx
//配置全局
git config --global user.name xxx
git config --global user.email xxx@xx.xx

查看暂存区的状态

git status

将文件添加到暂存区

git add 文件名
git add *

将文件从暂存区移除

git rm --cached 文件

将文件提交到仓库

git commit -m 消息

查看历史提交

// 查看完整⽇志
git log
// 查看简短格式
git log --oneline

将仓库中的数据恢复到⼯作区 -- 将仓库中的⽂件把修改为添加的⽂件重新恢复

git restore xxxfile

将⽂件恢复到某个前⼀个节点

git revert 编号

将⽂件重置到某⼀个节点

git reset --hard 编号

警告:
在团队合作的共同操作⼀个仓库的时候, git reset 命令⼀定要慎重使⽤,在使⽤的时候⼀定要再三确认其他同学的代码是否会被重置操作⽽导 致代码丢失,导致⼀些提交记录的丢失,这些都是不可逆的,⼀定要慎重
创建⼀个新的分⽀

// 创建分⽀
git branch 分⽀名
// 创建并切换分⽀
git checkout -b 分⽀名

查看各分⽀版本

git branch -v

切换分⽀

git checkout 分⽀名

删除分⽀

git branch -d 分⽀名

将⼀个分⽀内容合并到另⼀个分⽀中

// 1. 要切换到需要合并的分⽀中
git checkout 分⽀名
// 2. 将另⼀个分⽀合并到当前分⽀中
git merge 另⼀个分⽀名

给提交添加⼀个标签(标签不能重复)

git tag 标签名 编号

使⽤标签查看

git tag

删除标签

git tag -d 标签名

关联远程仓库

// 添加远程仓库
git remote add origin 远程仓库的url、ssh
// 移除远程仓库
git remote remove origin
// 给远程仓库重命名
git remote rename 名字

查看远程仓库信息

// 显示远程仓库名
git remote
// 显示远程仓库地址
git remote -v
// 显示远程仓库详细
git remote show origin

推送到远程服务器

// 1. 进⾏权限认证
ssh-keygen -t rsa -C【ssh】
// 2. 在gitee中添加公钥
看下图
// 3. 推送
git push origin master
相关推荐
2401_8260976218 小时前
同步&异步日志系统-日志落地模块的实现
c++·git·vim
半旧夜夏19 小时前
阿里云IOT消息处理
java·ide·git·物联网·spring·阿里云
我们的五年20 小时前
【Git版本控制器】第三弹——版本回退,撤销修改,删除文件
大数据·linux·git
一名嵌入式糕手20 小时前
Git从基础到进阶
git
不cong明的亚子21 小时前
github用户名密码登陆失效了
git·github
QC七哥21 小时前
git开发流程以及github社区企业版
git·github
邂逅you1 天前
GitHub基本操作及Git简单命令
git·github
EngZegNgi1 天前
git 提示 fatal: The remote end hung up unexpectedly
git
ricky_fan1 天前
本地部署MindSearch(开源 AI 搜索引擎框架),然后上传到 hugging face的Spaces——L2G6
人工智能·git·python
misty youth1 天前
github与git bash绑定问题
git·github·bash