Git 概述及相关命令(1)

Git概述

Git 是一个强大的分布式版本控制系统,广泛用于代码管理和协作开发。

  • 仓库(Repository): 存储项目文件及其历史记录的地方,分为本地仓库和远程仓库。
  • 工作区(Working Directory): 用户当前工作文件所在的目录。
  • 暂存区(Staging Area): 临时保存更改的区域,记录了下一次提交的文件快照。
  • 提交(Commit): 将暂存区的内容保存到仓库,形成一个新的版本。
  • 分支(Branch): 指向某次提交的指针,用于在开发中并行工作。

Git操作流程图

Git相关命令

git配置命令

  • 查看用户名和邮箱地址:

    $ git config user.name
    $ git config user.email

  • 修改用户名和邮箱地址:

    $ git config --global user.name "username"
    $ git config --global user.email "email"

创建仓库

  • 在现有项目中初始化Git仓库:

    git init

  • 从远程仓库克隆:

    git clone <repository_url>

<repository_url>:远程仓库的 URL 地址,可以是 HTTPS、SSH、或 Git 协议形式,例如:

  • HTTPShttps://github.com/user/repo.git
  • SSHgit@github.com:user/repo.git

查看工作区文件的状态

$ git status

将文件添加到暂存区

$ git add "filename"
$ git add . 

解释: "git add ."

  1. 添加当前目录下所有更改的文件到暂存区,包括子目录中的更改。
  2. 包括新增的文件、修改过的文件,但会忽略 .gitignore 文件中指定的文件。

提交文件到本地仓库

$ git commit -m "Commit message"

解释:

  • git commit:表示提交操作,告诉 Git 把暂存区的内容保存到仓库中形成一个新的快照。
  • -m:用于指定提交的描述信息。
  • "Commit message" :是一段简短的描述,解释了这次提交的目的或更改的内容

查看提交历史版本信息

$ git log
$ git reflog

回退历史版本

git reset --hard "commit_id"

解释:

  • git reset :用于重置当前分支的 HEAD 到指定提交,支持多种模式(--soft--mixed--hard)。
  • --hard:表示完全重置,即同时重置提交历史、暂存区和工作区。
  • <commit_id> :指定的提交 ID(如 a1b2c3d)是目标提交,分支将回到该提交的状态。

查看分支

$ git branch

创建分支

$ git branch "分支名"

删除分支

$ git branch -D "分支名"

跳转分支

$ git checkout "分支名"

合并分支

$ git merge "分支名"

添加远程仓库地址

git remote add origin git@gitee.com:xu-fuyong/stm32-freertos-led-test.git

解释:

  • 这条命令将远程仓库添加到本地 Git 仓库中,并命名为 origin
  • 其中,origin 是默认的远程名称(可以自定义其他名称,但 origin 常用作默认)。
  • 地址**git@gitee.com:xu-fuyong/stm32-freertos-led-test.git**是你在 Gitee 平台上的远程仓库的 SSH 地址,也可以是HTTP地址。

本地分支推送到远程仓库

git push -u origin "master"

解释:

  • 这条命令将本地的 master 分支推送到远程仓库的 master 分支。
  • -u 选项会将本地 master 分支与远程的 origin/master 分支关联起来,从此以后,只需使用 git push,Git 会自动推送到 originmaster 分支。
  • 这个命令在本地分支首次推送到远程时很有用,因为它建立了默认的上游分支关联。

下面文章会对以上命令进行示例演示 !!!

相关推荐
利刃大大2 小时前
【Git】五、多人协作
git
逸Y 仙X8 小时前
Git常见命令--助力开发
java·大数据·git·java-ee·github·idea
wgslucky10 小时前
pipeline 使用git parameter插件实现动态选择分支构造
git
春天姐姐12 小时前
vue3项目开发总结
前端·vue.js·git
{⌐■_■}18 小时前
【git】工作流实战:从本地仓库到远程仓库,git pull 与git rebase使用讲解,案例解析
git
大溪地C1 天前
Git 合并冲突解决与状态分析笔记
笔记·git
CsbLanca1 天前
Git配置个人和公司的提交信息,通过‘目录配置‘
git
娶个名字趴1 天前
Git企业开发
git
fruge1 天前
git上传 项目 把node_modules也上传至仓库了,在文件.gitignore 中忽略node_modules 依然不行
大数据·git·elasticsearch
_OMG_1 天前
Git 高效同步远程分支与本地分支清理技巧
git