常用的git操作

目录

[Git 初始化和克隆仓库](#Git 初始化和克隆仓库)

[Git 配置](#Git 配置)

[常规 Git 工作流](#常规 Git 工作流)

分支管理

远程仓库

撤销更改


Git 初始化和克隆仓库

  • git init: 初始化一个新的 Git 仓库。

    复制代码
    git init

    这将在当前目录创建一个新的 .git 子目录,其中包含所有必要的仓库文件。

  • git clone: 克隆一个现有的 Git 仓库。

    复制代码
    git clone <repository-url>

    这将创建一个名为 <repository-url> 的目录,初始化一个 .git 目录,并下载所有数据。

Git 配置

  • git config : 配置 Git 仓库或全局选项,如用户名和邮箱。

    复制代码
    git config --global user.name "Your Name" 
    git config --global user.email "your_email@example.com"

常规 Git 工作流

  • git status: 显示工作目录和暂存区的状态。

    复制代码
    git status
  • git add: 将文件更改添加到暂存区。

    复制代码
    git add <file> # 添加单个文件 2git add . # 添加当前目录下的所有更改
  • git commit: 将暂存区的更改提交到仓库。

    复制代码
    git commit -m "Commit message"
  • git push: 将本地分支的更新推送到远程仓库。

    复制代码
    git push origin <branch>
  • git pull: 从远程仓库拉取最新更改并合并到本地分支。

    复制代码
    git pull origin <branch>

分支管理

  • git branch: 列出、创建或删除分支。

    复制代码
    git branch # 列出所有分支 
    git branch <name> # 创建一个新分支 
    git branch -d <name> # 删除一个分支
  • git checkout: 切换分支或恢复工作目录文件。

    复制代码
    git checkout <branch> # 切换到另一个分支 
    git checkout -b <new-branch> # 创建并切换到新分支 
    git checkout -- <file> # 恢复文件到最后一次提交的状态
  • git merge: 将一个分支的更改合并到当前分支。

    复制代码
    git merge <branch>

远程仓库

  • git remote : 管理远程仓库的设置。

    复制代码
    git remote -v # 查看远程仓库信息 
    git remote add <name> <url> # 添加新的远程仓库 
    git remote remove <name> # 删除远程仓库

撤销更改

  • git revert: 撤销某次提交的更改,它会创建一个新的提交来反转更改。

    复制代码
    git revert <commit>
  • git reset: 重置当前 HEAD 到指定状态。

    复制代码
    git reset --hard <commit> # 重置工作目录和暂存区到指定提交 
    git reset --soft <commit> # 保留工作目录,重置暂存区和 HEAD 到指定提交
相关推荐
LaughingZhu2 分钟前
Product Hunt 每日热榜 | 2026-03-22
大数据·数据库·人工智能·经验分享·搜索引擎
进击的雷神11 分钟前
Trae AI IDE 完全指南:从入门到精通
大数据·ide·人工智能·trae
七夜zippoe20 分钟前
OpenClaw 会话管理:单聊、群聊、多模型
大数据·人工智能·fastapi·token·openclaw
「QT(C++)开发工程师」1 小时前
Git误操作急救手册大纲
git
longxibo1 小时前
【Ubuntu datasophon1.2.1 二开之八:验证实时数据入湖】
大数据·linux·clickhouse·ubuntu·linq
一只努力的微服务1 小时前
【Calcite 系列】深入理解 Calcite 的 AggregateFilterTransposeRule
大数据·数据库·calcite·优化规则
小堃学编程1 小时前
【项目实战】基于protobuf的发布订阅式消息队列(1)—— 准备工作
java·大数据·开发语言
无忧智库1 小时前
破局与重构:大型集团财务共享业财一体化的数字基因革命(PPT)
大数据·架构
zxm85131 小时前
UV使用及UV与Anaconda的区别
大数据·学习·机器学习·uv
贺小涛2 小时前
Git代码提交规范和踩坑排水明沟
大数据·git·elasticsearch