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

后端 潘老师 5个月前 (12-05) 123 ℃ (0) 扫码查看

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

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

本地操作

一次 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中添加的话依然会监听它的改变

匹配规则

从上往下匹配

远程仓库

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

命令

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

分支管理

  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.panziye.com/back/12127.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】