行业资讯 2025年08月6日
0 收藏 0 点赞 301 浏览 2472 个字
摘要 :

文章目录 本地操作 .gitignore 文件 远程仓库 分支管理 git checkout 本文主要讲解关于Git分布式版本控制工具详解相关内容,让我们来一起学习下吧! Git 是一个分布……




  • 本地操作
  • .gitignore 文件
  • 远程仓库
  • 分支管理
  • git checkout

本文主要讲解关于Git分布式版本控制工具详解相关内容,让我们来一起学习下吧!

  • Git 是一个分布式版本控制系统,用于跟踪文件的变化并协调多人在相同项目上的工作
  • GitHub 是一个代码托管平台

本地操作

Git分布式版本控制工具详解

一次 commit 一个版本

  1. git add : 添加文件到缓存区
    • git add . : 提交当前目录下所有文件
    • git add [dir] : 提交dir目录下的所有
    • git add [file1] [file2] : 提交多个文件
  2. git commit : 提交暂存区到本地仓库
    • git commit -m \'解释\'
    • git commit -am \'\' : -a 参数设置修改文件后不需要执行 git add 命令,直接来提交【相当于合并了 git add 和 git commit】
  3. git diff : 比较文件的不同,即暂存区和工作区的差异
    • git diff <file> : 比较file在工作区和暂存区的区别
    • git diff HEAD : 对比 工作区+缓存区 和 本地仓库(上一次commit的版本)
    • git diff --cached/git diff --staged : 比较暂存区与本地仓库(上一次commit的版本)
    • git diff <commit_hash> <commit_hash> : 比较两个提交版本的差异,版本ID可以用 git log 命令查看
    • git diff <branch_name> <branch_name> : 比较两个分支之间的差异
  4. git reset [--soft | --mixed | --hard] [HEAD] : 回退版本
    • git rest --soft [版本号|HEAD] : 单纯的回退版本
    • git rest --hard : 重置暂存区和工作区
    • git rest --mixed : 【默认】用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变
  5. git rm : 将文件从暂存区和工作区中删除
    • git rm <file> : 从工作区和暂存区删除
    • git rm --cached <file> : 只从暂存区中删除,
  6. git mv : 移动或重命名工作区文件
  7. git status : 查看仓库当前的状态,显示有变更的文件
    • git status -s : 简单版本
  8. git log : 查看历史提交记录,可以查到版本ID
    • git log --oneline : 查看历史记录的简洁的版本
  9. git ls-files : 查看暂存区文件
  10. alias xxx = \'xxxxx\' : 重命名一个命令
    • 例如:alias graph=\'git log --graph --oneline --decorate --all\'

.gitignore 文件

.gitignore 文件中添加需要忽略的文件,但是如果某个文件已经添加到版本库中的文件,再在.gitignore中添加的话依然会监听它的改变

匹配规则

从上往下匹配Git分布式版本控制工具详解

远程仓库

  1. 本地关联远程
  2. 拉取远程仓库 : git clone git://github.com/schacon/grit.git

命令

  1. git remote -v
  2. git pull
  3. git push

Git分布式版本控制工具详解

分支管理

  1. git branch [branch_name] : 新建分支
  2. git [checkout|swicth] [branch_name] : 切换分支,推荐使用 switch
  3. git branch [-d|-D] [branch_name]
    • git branch -d [branch_name] : 删除已经合并的分支
    • git branch -D [branch_name] : 删除未合并的分支
  4. git merge [branch_name] : 合并分支
    • 如果当前分支是 main, branch_name 是dev,就表示将 dev 的内容合并到 main 上
    • 合并冲突,在执行合并命令之后,如果有合并冲突会进入一个合并中的状态,我们可以选择执行 git merge --abort 来中止合并,或者进入 冲突文件 修改之后再执行一遍 git add [file]git commit -m \'冲突解决啥啥啥的\'
  5. git rebase [branch_name] : 合并分支
    • 如果当前分支是 main, branch_name 是dev,就表示将 main 从分叉开始的节点处以上的版本都嫁接到 dev 的当前版本以上
  6. 创建并切换分支:
    • git switch -c <新分支名>
    • git checkout -b <新分支名>

git checkout

git checkout 命令在 Git 中有多种用途,主要用于切换分支、创建分支、还原文件等操作。以下是一些常见的用法:

  1. 切换分支:
    git checkout <分支名>
    

    用于切换到指定的分支。在新版本的 Git 中,建议使用 git switch 命令代替,因为它提供更直观的分支切换体验。

    git switch <分支名>
    
  2. 创建新分支并切换到新分支:
    git checkout -b <新分支名>
    

    这个命令相当于执行了以下两个命令:

    git branch <新分支名>
    git checkout <新分支名>
    

    或者使用 git switch

    git switch -c <新分支名>
    
  3. 切换到前一个分支:
    git checkout -
    

    这个命令会在当前分支和前一个分支之间切换。

  4. 撤销工作区的修改(还原文件):
    git checkout -- <文件名>
    

    这个命令用于撤销对工作区文件的修改,将文件还原到最近一次提交的状态。

  5. 切换到某个提交或标签:
    git checkout <提交哈希或标签名>
    

    这会将工作目录切换到指定的提交或标签,处于”分离头指针”状态,不会创建新分支。

  6. 创建并切换到新分支,基于某个提交:
    git checkout -b <新分支名> <基于的提交哈希>
    

    这个命令会创建一个新分支,并将其指向指定的提交。

  7. 切换到远程分支:
    git checkout -t origin/<远程分支名>
    

    这个命令用于切换到远程分支,并创建与之关联的本地分支。

请注意,git checkout 的用法在不同的 Git 版本中可能有所不同,新版本中更推荐使用 git switchgit restore 来替代一些 git checkout 的用法,因为它们提供了更直观和安全的操作。

以上就是关于Git分布式版本控制工具详解相关的全部内容,希望对你有帮助。欢迎持续关注潘子夜个人博客(www.panziye.com),学习愉快哦!

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9966.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

985
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

463
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

347
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

455
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

515
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

831
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号