HEAD 是对存储库中的一个 head 的引用,除非使用分离的 HEAD,在这种情况下它直接引用任意提交。 master: 默认的开发分支。无论何时创建 Git 存储库,都会创建一个名为 “master” 的分支,并成为活动分支。这纯粹是惯例,并不是必需的,master 分支和其他任何普通分支完全一样。 main: 同 master ,自某漂亮国黑人事...
main 分支是当前选定的分支,因为 HEAD 指针引用的是 main 分支。 每次提交时,main 分支都会指向最新的提交。 在下一步中,将创建一个新的分支 feature-23,新创建的分支会成为选定的分支。 HEAD 指针将从 main 分支移动到 feature-23 分支。 使用带有选项-b的checkout命令。 git checkout -b feature-23 或者,...
在Git中,还有一个重要的概念是”HEAD”指针。HEAD指针是当前分支的标志,它指向当前分支上的最新提交。当我们切换分支时,HEAD指针会随着切换而改变。通过HEAD指针,我们可以清晰地知道当前所在的分支。 通过分支关系图谱,我们可以方便地查看和理解不同分支之间的关系,包括分支的创建、合并、切换等操作。分支的使用可以提高...
HEAD 指针指向当前的分支,这里就是 main 分支。 在.git 的 HEAD 文件里也可以看到 HEAD 指针的指向: 除了分支之外,tag 也是指向 commit 的一个指针。 比如git tag -l 可以看到我本地有这些 tag: 其实这些也就是指向某个 commit 的指针: HEAD、branch、tag 这些都是指针,在 git 里叫做 ref。 git log 默...
可以直接使用-f选项让分支指向另一个提交。例如: git branch -f main HEAD~3 上面的命令会将 main 分支强制指向 HEAD 的第 3 级父提交。 在运行git branch -f main HEAD~3之后,会得到以下结果。 分离Head与强制修改分支位置小结 分离HEAD与强制修改分支位置的相同之处在于都是在分支树上移动,且都可以利用哈...
– 远程仓库的HEAD分支是main,表示追踪的远程分支是origin/main。 – 远程仓库存在分支main、feature1和feature2,表示这些分支都有对应的远程追踪分支。 通过以上两个方法,你可以轻松地查看Git项目中所有分支的追踪关系。 要查看追踪分支,可以使用以下命令:
在git-flow工作流模型中,核心分支main和develop是常驻分支。 main分支: 长期/稳定分支,HEAD永远指向一个可发布的状态。 develop分支: 长期存在的开发主分支,HEAD指向最新的、已经开发完成(可能未经完整测试)的状态。 develop分支是开发新特性的基础分支。当要开发一个新特性时,从develop分支checkout一个feature/xxx分支...
git reset 通过把分支记录回退几个提交记录来实现撤销改动。你可以将这想象成“改写历史”。git reset 向上移动分支,原来指向的提交记录就跟从来没有提交过一样。 看一个例子: 执行git reset HEAD~1 后,结果为: Git 把 main 分支移回到 C1;现在我们的本地代码库根本就...
在数据库进行最初的提交后, Git会创建一个名为main的分支。因此之后的提交,在切换分支之前都会添加到main分支里。 之前默认是master分支。可以在命令行中进行修改: git --version #查看版本 git config --global init.defaultBranch main #git在2.28.0上,重新设置git默认分支为main ...
master(或main)仓库的“master”分支,默认的主分支,初始化仓库就有了。Github上创建的仓库默认名字为“main”origin/master表示远程仓库(origin)的“master”分支origin/HEAD表示远程仓库(origin)的最新提交的位置,一般情况等于“origin/master” 2.2、工作区/暂存区/仓库...