git 基础知识

GIT 知识

软件版本控制

作用:软件源码版本管理、多人协作开发、版本多分支开发、代码回滚(回退)等功能。

  • 集中式版本控制:将代码仓库存放到一台服务器上,开发式要依赖这台服务器。
    • 优点:简单、方便管理、适合中小型项目;
    • 缺点:一旦服务器宕机,会严重影响开发;
    • SVN、CVS
  • 分布式版本控制:
    • 每个开发者的本地都有完整的版本库副本
    • 无需联网即可提交、查看历史
    • 拥有更强的分支管理能力
    • 例如:Git、Mercurial、Bazaar
    • 优势:容错性高,协作灵活,支持离线工作

远程仓库

  • 公网仓库:gitee \ githup (开源、私有)
  • 私有(局域网)仓库:gitea \ gitlab
  • 本地仓库:git客户端创建或者clone(克隆)

image

命令

GIT全局设置

git config --global user.name "无一"
git config --global user.email "2415790542@qq.com"

创建git仓库

#创建一个目录
mkdir lwy1
cd lwy1
#初始化仓库 ,自带一个.git目录,记录配置与每次提交的内容
git init
touch README.md
#将一个文件添加到缓存区
git add README.md
#将所有文件的修改,添加到暂存区
git add .
#将缓存区的内容提交到本地仓库
#-m "这里面是注释信息"                 
git commit -m "first commit"

git remote add origin https://gitee.com/lwy97/lwy1.git
#同步本地仓库到远程仓库
git push 

#第一次同步,需要远程仓库地址(gitee上创建仓库时,自动生成远程仓库地址)
#类型仓库:https方式
git remote add origin https://gitee.com/lwy97/lwy1.git
#类型仓库:ssh提交方式
git remote add origin git@gitee.com:lwy97/lwy1.git

#选择提交分支
#                   选择分支
git push -u origin "master"

#仓库提交类型   https/ssh

克隆仓库

#克隆仓库

#拉取最新版本

  1. git add 将需要提交的修改添加到暂存区
# 添加单个文件(如 README.md)
git add README.md

# 添加当前目录所有修改(新增、修改、删除的文件,推荐日常用)
git add .

# 添加指定目录(如 docs/ 下的所有文件)
git add docs/
  1. git commit 将暂存区的内容提交到本地仓库
# 提交并添加说明(必须写!说明本次改了什么,方便自己和他人查看)
git commit -m "feat: 新增用户登录功能"  # 格式建议:类型: 描述(如 fix/bugfix: 修复登录bug)

# 若提交后发现漏加文件或想修改说明,用 --amend 补充(覆盖上一次提交,不新增记录)
git add 漏加的文件
git commit --amend  # 会打开编辑器,可修改提交说明
  1. git push 将本地仓库的修改推送到远程仓库
# 首次推送分支(如 master)到远程,建立跟踪关系(后续可简化命令)
git push -u origin master  # -u 表示关联本地分支和远程分支

# 非首次推送(已关联跟踪关系),直接推送当前分支
git push
  1. git pull 从远程仓库同步到工作区
# 拉取远程 master 分支并合并到本地当前分支(已关联跟踪关系时)
git pull

# 未关联跟踪关系时,指定远程和分支(如拉取 origin 的 master 到本地当前分支)
git pull origin master
  1. 克隆仓库到本地
# 克隆仓库(HTTPS 方式,需输入 Gitee 账号密码;SSH 方式需提前配置密钥)
git clone https://gitee.com/用户名/仓库名.git

# 进入仓库目录
cd 仓库名

给gitee添加ssh公钥

#1.生成新的 SSH 密钥
#若没有密钥或需要新密钥,运行以下命令:

ssh-keygen -t ed25519 -C "你的邮箱地址"


#(如果系统不支持 ed25519 算法,可使用ssh-keygen -t rsa -b 4096 -C "你的邮箱地址")
#执行后会出现几个提示:
#密钥保存路径:直接按回车使用默认路径
#密钥密码:可设置密码(回车表示无密码)
#确认密码:再次输入密码或回车

#2.生成密钥后,查看公钥内容:

cat ~/.ssh/id_ed25519.pub  

#3.添加公钥到 Gitee
登录 Gitee 账号
点击右上角头像,选择 "设置"
在左侧菜单中找到 "SSH 公钥"
点击 "添加公钥"
在 "标题" 栏填写一个便于识别的名称(如 "我的笔记本")
在 "公钥内容" 栏粘贴刚才复制的公钥
点击 "确定",可能需要输入 Gitee 密码确认

#4.测试连通性
ssh -T git@gitee.com

多人协作开发

# 仓库  里面的管理

多分支管理

命令 说明
git branch 查看本地所有分支(* 标记当前分支)
git branch -r 查看远程所有分支
git branch -a 查看本地+远程所有分支
git branch <分支名> 创建新分支(基于当前分支)
git checkout <分支名> 切换到指定分支
git checkout -b <分支名> 创建并立即切换到新分支
git merge <分支名> 将指定分支合并到当前分支
git branch -d <分支名> 删除已合并的本地分支
git branch -D <分支名> 强制删除未合并的本地分支
git push origin --delete <分支名> 删除远程分支

撤销操作:回滚(后悔药)

#查看提交记录
git log
#回滚到某次提交的内容
git reset --soft 哈希值:  软回滚:保留暂存区和工作区数据,用于下次提交

git reset --hard 哈希值:  硬回滚:清除暂存区和工作区数据,版本回退

git reset --mixed 哈希值: 混合回滚:清空暂存区,保留工作区

标签管理

用于标记重要版本(如发布版本 v1.0.0),方便后续回溯。

命令 说明
git tag 查看所有本地标签
git tag -a <标签名> -m "标签说明" 创建带注释的标签(推荐)
git tag <标签名> 创建轻量标签(仅存哈希,无注释)
git push origin <标签名> 推送指定标签到远程
git push origin --tags 推送所有本地标签到远程
git tag -d <标签名> 删除本地标签
git push origin --delete <标签名> 删除远程标签
posted @ 2025-09-01 19:45  落无一  阅读(13)  评论(0)    收藏  举报