下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 13 | 进一步理解HEAD和branch
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

玩转Git三剑客

共62讲 · 62课时,约600分钟
14794
免费
01 | 课程综述
免费
02 | 安装Git
免费
03 | 使用Git之前需要做的最小...
04 | 创建第一个仓库并配置loca...
05 | 通过几次commit来认识工作...
06 | 给文件重命名的简便方法
07 | 通过git log查看版本演变...
08 | gitk:通过图形界面工具来...
免费
09 | 探密.git目录
10 | commit、tree和blob三个对...
11 | 小练习:数一数tree的个数
12 | 分离头指针情况下的注意事...
13 | 进一步理解HEAD和branch
14 | 怎么删除不需要的分支?
免费
15 | 怎么修改最新commit的mess...
16 | 怎么修改老旧commit的mess...
17 | 怎样把连续的多个commit整...
18 | 怎样把间隔的几个commit整...
19 | 怎么比较暂存区和HEAD所含...
20 | 怎么比较工作区和暂存区所...
21 | 如何让暂存区恢复成和HEAD...
22 | 如何让工作区的文件恢复为...
23 | 怎样取消暂存区部分文件的...
24 | 消除最近的几次提交
25 | 看看不同提交的指定文件的...
26 | 正确删除文件的方法
免费
27 | 开发中临时加塞了紧急任务...
28 | 如何指定不需要Git管理的...
29 | 如何将Git仓库备份到本地...
30 | 注册一个GitHub账号
31 | 配置公私钥
32 | 在GitHub上创建个人仓库
33 | 把本地仓库同步到GitHub
34 | 不同人修改了不同文件如何...
35 | 不同人修改了同文件的不同...
36 | 不同人修改了同文件的同一...
37 | 同时变更了文件名和文件内...
38 | 把同一文件改成了不同的文...
39 | 禁止向集成分支执行push ...
40 | 禁止向集成分支执行变更历...
41 | GitHub为什么会火?
免费
42 | GitHub都有哪些核心功能?
43 | 怎么快速淘到感兴趣的开源...
44 | 怎样在GitHub上搭建个人博...
45 | 开源项目怎么保证代码质量...
46 | 为何需要组织类型的仓库?
47 | 创建团队的项目
48 | 怎样选择适合自己团队的工...
49 | 如何挑选合适的分支集成策...
50 | 启用issue跟踪需求和任务
51 | 如何用project管理issue?
52 | 项目内部怎么实施code re...
53 | 团队协作时如何做多分支的...
54 | 怎样保证集成的质量?
55 | 怎样把产品包发布到GitHub...
56 | 怎么给项目增加详细的指导...
免费
57 | 国内互联网企业为什么喜欢...
58 | GitLab有哪些核心的功能?
59 | GitLab上怎么做项目管理?
60 | GitLab上怎么做code revi...
61 | GitLab上怎么保证集成的质...
62 | 怎么把应用部署到AWS上?
本节摘要

精选留言(28)

  • 2018-12-13
    以前觉得枯燥的东西,被老师带的爱上了GIT,生动有趣!

    作者回复: 听了非常高兴

    27
  • 2018-12-20
    视频5:30处,开始讲HEAD的使用,以及PARENT符号^和~。我觉得这里几个地方没讲清楚
    1 一个节点,可以包含多个子节点(checkout 出多个分支)
    2 一个节点可以有多个父节点(多个分支合并)
    3 ^是~都是父节点,区别是跟随数字时候,^2 是第二个父节点,而~2是父节点的父节点
    4 ^和~可以组合使用,例如 HEAD~2^2

    作者回复: 补充得很到位

    21
  • 2018-12-11
    老师,课程里面会提到repo的内容吗?公司里现在使用repo比较多,Git都藏在repo里了。

    作者回复: https://blog.csdn.net/nwpushuai/article/details/78778602 这篇中文写得蛮好,供参考。英文资料
    https://gerrit.googlesource.com/git-repo/

    我有很多年没和repo打交到了。以前在kedacom用过。

    3
  • 2018-12-12
    在windows的cmd命令行界面,不太会看diff,老师可以指导一下么?谢谢了

    作者回复: @GS,你有福气了,你想读懂diff的内容,详见:https://github.com/gotgit/gotgit/blob/master/01-meet-git/010-scm-history.rst

    2
  • 2019-12-06
    讲的非常清晰,老师,希望您能讲一下submodule

    作者回复: 留个白吧,希望大家学好git后有能力自己搞定。多找点资料实践一下吧

    1
  • 2019-02-08
    What's the difference between HEAD^ and HEAD~ in Git?
    https://stackoverflow.com/questions/2221658/whats-the-difference-between-head-and-head-in-git
    这里对~和^区别讲的很好,分享给大家

    作者回复: 👍

    1
  • 2018-12-13
    很期待老师后面的内容哦,系统地学一下很有好处呢。我对怎么处理版本冲突,分支合并以及团队合作很感兴趣。

    作者回复: 👌,我好好整理后面的内容

    1
  • 2018-12-12
    老师讲的不错 收获颇多 期望老师快速更新

    作者回复: 谢谢支持

    1
  • 2019-09-02
    老师 您好,

    $ git checkout master
    Previous HEAD position was 1dd4e1c add style
    Switched to branch 'master'
    M index.html
     我这个版本没提示,是因为版本问题还是设置问题呢?

    谢谢
    展开
  • 2019-06-12
    老师 ,请教个问题,问题发生场景如下:
    我同事将developer分支与自己的功能分支merger时发生了冲突,他解决冲突 commit后发现 自己分支的HEAD上面 缺失了developer上面其他同事提交的一部分代码,我检查后发现,缺失的代码在他的FETCH_HEAD上面,我checkout 他的功能分支后,执行 git merge FETCH_HEAD命令时提示 已经是最新状态了,请问一下这种情况该怎么办?谢谢。

    作者回复: 这是你同事执行merge出现冲突的时候,弄丢了其他同事的变更引起的。如果是我的话,回到你同事merge前的commit,和develop分支重新merge(仔细处理冲突)。merge好后,保险起见和自己功能分支上一个commit以及和develop分支都做个比较,没问题了再继续开发。

  • 2019-05-01
    非科班之前学的git很零散,只会工作用的那几个命令,底层的也不了解,用起来没什么信心,这样底层的带着讲一讲,系统性的学习了之后感觉再用git得心应手的感觉,这就是知之为知之的状态了,哈哈。git的设计也是写代码可以用到的思想。

    作者回复: 肯定认真学了。👍

  • 2019-03-21
    git的错误信息提示真棒
  • 2019-03-05
    06:10 位置介绍 HEAD^^ 等同于 HEAD~2 这个说法不对吧。
    其他同学留言也有提到:HEAD^^ 等同于 HEAD^2,也即祖父;HEAD~2 是第二个父亲(合并 commit 有两个父亲)

    作者回复: "^"这个操作符代表父commit。
    当一个commit有多个父commit时,可以通过在符号“^”后面跟上一个数字来表示第几个父commit。
    比如,"A^" 等于 “A^1”(表示A这个commit的第1个父commit)。

    连续的“^”符号依次沿着父commit进行定位,直到某个祖先commit。

    ~<n> 相当于连续n个符合“^”。

    所以,HEAD^^ 等同于 HEAD~2 是对的。

    还有,这些都可以自己做实验测试一下的。

  • 2019-02-14
    老师 ,老邓的git乱码解决方案 下的步骤1的下载:http://loaden.googlecode.com/files/gitconfig.7z 已经 404 了
  • 老师,你这一节里9c6861f3a71b为什么成为了分离头指针?这个commit应该是Add index+logo那个commit,你上一节是从415c5c80(Add style.css创建commit的,生成的commit为3d4731,后来又以此为基础创建了一个fix_css的分支,请问,到了这一节,9c6861f3a71b为啥成了分离头指针?)
  • 听了老师的课,我觉得自己会成为技术部50个人里最懂git的人,嘿嘿

    作者回复: 开心极了

  • 2019-01-06
    HEAD指向某个commit后, 怎么让它重新指向branch的最新commit? 或直接指向Master分支的最新commit?
    谢谢老师。

    作者回复: 用 checkout 命令切换到你想要的分支。

  • 2019-01-04
    老师讲的太精彩了,我是直接一口气从头看到这个章节,目测已经深夜了..

    作者回复: 适合就好

  • 2019-01-01
    老师好,我看到 有条指令:git checkout -b fix_readme fix_css 不明白,我测试后,出错了,提示'fix_css' 不是一个提交,不能基于它创建分支 'fix_readme' 什么意思?
  • 老师我的 git log 里面没有显示head头指针的指向,这个需要在那里配置才能出来么

    作者回复: 当前处在分离头指针状态下,HEAD就不会指向某个分支了。请检查一下是不是这个原因引起的?