【Git入门】

Git 配置命令

bash 复制代码
git config --global user.name "xxx"
git config --global user.email xxx@gmail.com

# 查看配置信息 
git config --list

# 生成 SSH 密钥
ssh-keygen -t rsa -b 4096 -C "xxx@gmail.com"

Git 工作流程 && 常用命令

bash 复制代码
# 克隆远程仓库
git clone xxxx

# 查看工作区状态
git status

# 添加到缓存区
git add <修改的文件>

# 提交修改
git commit

# 推送
git push
  • 创建新分支
bash 复制代码
git checkout -b new-feature
  • 暂存
bash 复制代码
git add .
  • 提交修改
bash 复制代码
git commit -m "提交信息"
  • 拉取修改
bash 复制代码
git pull origin main
  • 推送更改
bash 复制代码
git push origin XXX
  • 合并修改
bash 复制代码
git check main
git pull origin main
git merge new-feature
  • 删除分支
bash 复制代码
git branch -d new-feature

或者从远程仓库删除分支:

bash 复制代码
git push origin --delete new-feature
  • 查看提交历史
bash 复制代码
git log
  • 查看工作区和暂存区的差异
bash 复制代码
git diff

Git 创建仓库

使用当前目录作为git仓库,我们要进行初始化

bash 复制代码
git init

执行命令后在当前目录生成一个.git目录

Git 分支管理

  • 创建分支
    创建新分支并切换到该分支:
bash 复制代码
git checkout -b <branchname>
  • 查看分支
    查看所有分支:
bash 复制代码
git branch

查看远程分支:

bash 复制代码
git branch -r

查看所有本地和远程分支:

bash 复制代码
git branch -a
  • 合并分支
    将其他分支合并到当前分支:
bash 复制代码
git merge <branchname>
  • 删除分支
    删除本地分支:
bash 复制代码
git branch -d <branchname>

强制删除未合并的分支:

bash 复制代码
git branch -D <branchname>

删除远程分支:

bash 复制代码
git push origin --delete <branchname>

恢复和回退

Git 提供了多种方式来恢复和回退到之前的版本,不同的命令适用于不同的场景和需求。

以下是几种常见的方法:

git checkout:切换分支或恢复文件到指定提交。
git reset:重置当前分支到指定提交(软重置、混合重置、硬重置)。
git revert:创建一个新的提交以撤销指定提交,不改变提交历史。
git reflog:查看历史操作记录,找回丢失的提交。

  • git reset:重置当前分支到特定提交

git reset 命令可以更改当前分支的提交历史,它有三种主要模式:--soft、--mixed 和 --hard。

--soft:只重置 HEAD 到指定的提交,暂存区和工作目录保持不变。

bash 复制代码
git reset --soft <commit>

--mixed(默认):重置 HEAD 到指定的提交,暂存区重置,但工作目录保持不变。

bash 复制代码
git reset --mixed <commit>

--hard:重置 HEAD 到指定的提交,暂存区和工作目录都重置。

bash 复制代码
git reset --hard <commit>

Git 进阶操作

  • Git Stash:临时保存工作进度,方便切换任务。
  • Git Rebase:将一个分支上的更改移到另一个分支之上,保持提交历史线性。
    • git pull --rebase :
    • 假设你的提交历史是 A-B-C,远程有人提交了 D:
      1. 你的状态:A-B-C(C 是你的本地提交)。
      2. 远程状态:A-B-D
      3. 执行 git pull --rebase:
        • Git 会先把 C 拿掉,暂存起来。
        • 把本地分支更新到 D(变成 A-B-D)。
        • 把 C 重新应用在 D 之后(变成 A-B-D-C')。
  • Git Cherry-Pick:选择特定提交并应用到当前分支。
相关推荐
IanSkunk9 小时前
视光中心承接近视防控需求,核心是先把服务流程做成标准化工程
大数据
SEO_juper10 小时前
用Google Search Console数据做内容审计:找出网站上哪些页面在“吃白饭“
大数据·人工智能·外贸独立站
tianyuanwo11 小时前
当提交标题重复阻塞CI:Git分支修复实战
git·ci/cd·分支基线调整
Salt & Light11 小时前
Git 分支操作与恢复完整记录
git
重生的黑客12 小时前
从远程仓库到企业级协作:Git push、pull、PR、多人开发与分支模型
git·分支·多人协作
独行侠影a12 小时前
Mojo:专为AI而生的“Python++”,能否真正挑战CUDA与C++的统治地位?
大数据·人工智能·深度学习
greenbbLV12 小时前
中小公司积分商城选型:SaaS与私有化方案对比解析
大数据·前端·小程序
半兽先生12 小时前
大模型技术开发与应用——5.大模型Agent开发(CrewAI)
大数据·人工智能·python·机器学习·ai
空杆推不起13 小时前
穿透 Flink CDC 表层用法:数据库日志捕获机制、Flink Source 运行时、端到端一致性底层原理详解
大数据·数据库·flink
小邓的技术笔记13 小时前
DeepSeek 大模型落地应用与场景实战指南
大数据·人工智能