首页 > 其他分享 >git 进阶 重难点学习(git checkout和git branch 的区别 git reset 和git revert的用法)git 里面origin /head

git 进阶 重难点学习(git checkout和git branch 的区别 git reset 和git revert的用法)git 里面origin /head

时间:2023-12-22 17:45:46浏览次数:40  
标签:reset origin git 提交 仓库 重难点 branch 分支

git 几个分区

工作区 暂存区 本地仓库和远程仓库

疑难问题:

1. git pull是到本地仓库还是工作区

git pull 命令会将远程仓库的更新内容拉取到本地仓库,并将其合并到当前分支的工作区中。具体来说,git pull 命令首先从远程仓库拉取最新的提交到你的本地仓库,然后将这些变化合并到你当前所在的分支上,最后将合并结果更新到你的工作区。

因此,git pull 命令会直接影响你的工作区,将更新的内容合并到当前分支的工作区中。如果你的工作区中有未提交的更改,git pull 会尝试自动合并这些更改和远程仓库的更新内容,如果存在冲突则需要手动解决冲突。

总之,git pull 命令会将远程仓库的更新内容拉取到本地仓库,并将其合并到当前分支的工作区中。
如何本地工作区有没有暂存的提交会提示无法pull 请先add commit 到本地仓库

2. git branch和git checkout的区别

git checkoutgit branch 是 Git 中两个常用的命令,它们的作用不同。

git checkout 命令用于切换分支或恢复文件。例如,可以使用 git checkout branch_name 切换到另一个分支,也可以使用 git checkout file_name 恢复文件到上一次提交的状态。

git branch 命令用于创建、列出、删除分支。例如,可以使用 git branch 列出所有分支,使用 git branch branch_name 创建新分支,使用 git branch -d branch_name 删除分支。
git branch -f 可以强制将分支指向哪一次提交
总的来说,git checkout 主要用于分支切换和文件恢复,而 git branch 主要用于分支管理。

3. git reset 和git revert的区别

git reset 和git revert都是对本地的git进行操作,区别就是git revert 会生成一个本地提交

git reset撤销本地的提交,同时移动head 和分支,但不会提交撤销的记录

git origin

在 Git 中,origin 是一个默认的远程仓库的名称。通常情况下,当你克隆一个远程仓库时,Git 会自动创建一个名为 origin 的远程仓库,并将其作为默认的远程仓库。

当你执行像 git pull origin mastergit push origin master 这样的命令时,origin 表示远程仓库的名称,而 master 表示分支的名称。

你也可以通过 git remote -v 命令来查看远程仓库的详细信息,包括 origin 所指向的远程仓库的 URL。

总之,origin 在 Git 中通常表示默认的远程仓库的名称,用于指代远程仓库的地址。

关于head(head就是*)

head是指当前分支,指向最新的提交
在 Git 中,HEAD 是一个指向当前所在分支的引用(reference)。它是一个指针,指向当前被检出(checked out)的分支或者提交(commit)。HEAD 始终指向当前所在的分支的最新提交,或者在分离头指针(detached HEAD)状态下,指向一个具体的提交而不是一个分支。

当你切换分支时,HEAD 会随之移动,指向新的分支。当你提交新的更改时,HEAD 也会随着当前分支的最新提交而移动。

在分离头指针状态下,HEAD 直接指向一个具体的提交,而不是指向任何分支。这种情况通常发生在你检出某个特定的提交而不是一个分支时,例如通过提交的哈希值来检出。

总之,HEAD 在 Git 中是一个指向当前所在分支或提交的引用,它可以帮助你确定当前工作目录所在的状态。

head 游离

head一般是指向当前分支的最新提交
通过git checkout 可以分离分支和提交

标签:reset,origin,git,提交,仓库,重难点,branch,分支
From: https://www.cnblogs.com/codedingzhen/p/17921768.html

相关文章

  • git-移除某文件夹的版本控制
    git-移除某文件夹的版本控制如我们把.idea目录误提达到远端。有时候我们一开始在上传项目的时候把某些不必要的文件也添加进了git的版本控制。此时gitignore对这些文件就不起作用了。因此我们要先从git里面把这些文件untracked,然后修改gitignore,最后提交。核心,使用git......
  • gitconfig常用配置
    1.gitconfigGit的配置有三个级别:项目级别的配置、用户级别的配置和系统级别的配置。项目级别的配置:每个Git仓库都可以有一个项目级别的配置文件,位于仓库的 .git/config 文件中。该配置文件只适用于当前仓库,它包含了仓库特定的配置选项,如远程仓库的URL、分支的跟踪关系......
  • 『Git』Git常用命令分类整理
    配置命令项目配置文件:项目/.git/config1.gitconfig--localuser.namexxx:设置用户名,信息记录在项目/.git/config文件中[email protected]:设置邮箱地址,信息记录在项目/.git/config文件中全局配置文件:~/.gitconfig1.gitconfig--globaluser.nam......
  • win10安装git fatal: open /dev/null or dup failed: No such file or directory错误
    https://files.cnblogs.com/files/netlock/null.zip?t=1703226893&download=true文件地址解决方法:1.C:\Windows\System32\drivers\null.sys这个文件损坏,可以从网上下载win7、win10对应的null.sys文件,然后进行替换。由于我是win10的电脑,提供链接。百度网盘链接:https://pan.baid......
  • 初次认识 Git (v2.x)
    什么是版本控制?版本控制,也称为源代码控制,是一种跟踪和管理软件代码变更的实践。版本控制系统是软件工具,可帮助软件团队管理源代码随时间推移而发生的变更。随着开发环境的加速,版本控制系统可以帮助软件团队更快、更智能地工作。它们对于DevOps团队特别有用,因为它们可以帮助该......
  • Uniapp开发:HBuilder开发工具从Git引入的项目文件修改后不区分显示标识的问题
    一、问题如下使用的HBuilderX版本:3.98Git插件已安装:项目结构如下:右击项目目录,在git命令中-》检查已修改,可以发现还是能检索到修改过的文件:文件是有修改过的,但是在上图中没有任何的修改标识,这些文件也没有添加到.gitignore配置中。......
  • 如何在 Git 书写良好的 Commit Messages
    如何在Git书写良好的CommitMessagesWhy(为什么编写)|How(如何编写)WhyMessagesAdiffwilltellyouwhatchanged,butonlythecommitmessagecanproperlytellyouwhy良好的Messages可以告诉人们变更的原因,更好高效地理解几个月前甚至几年前发生的事情。......
  • 软件测试/测试开发|GitHub怎么用,这篇文章告诉你
    前言作为一个刚刚接触代码的程序员,可能我们会听到一个词GitHub,把代码提交到GitHub上,或者从GitHub上克隆项目到本地,在GitHub上查看某个工具的文档等等,我们不禁要问,GitHub究竟是什么,该怎么用,本文就给各位初学者们介绍什么是GitHub,它能帮我们干什么?什么是GitHubGitHub是一个面向......
  • 将本地代码添加到gitee
    新建仓库,将代码加入gitee根据提示创建仓库填写完成后创建readme文件,目的为了初始化分支。现在按照下面命令操作#进入本地项目文件夹cdxxxgitinitgitremoteaddoriginhttps://gitee.com/zcjlq/test1.gitgitpullgitaddxxxgitcommit-m"xxx"gitpush已有gitee仓库,将......
  • Gitlab-CICD
    CICD是什么我们的开发模式经历了如下的转变:瀑布模型->敏捷开发→DevOps(Development、Operations的组合词,是一组过程、方法与系统的统称)后来随着DevOps的兴起,出现了持续集成(ContinuousIntegration)、持续交付(ContinuousDelivery)、持续部署(ContinuousDeployment)的新方法,关于......