玩转 Git 三剑客
苏玲
携程代码平台负责人
60828 人已学习
新⼈⾸单¥68
课程目录
已完结/共 62 讲
第三章:Git与GitHub的简单同步 (4讲)
第五章:Git集成使用禁忌 (2讲)
玩转 Git 三剑客
登录|注册
留言
68
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 05 | 通过几次commit来认识工作区和暂存区
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程综述
02 | 安装Git
03 | 使用Git之前需要做的最小配置
04 | 创建第一个仓库并配置local用户信息
05 | 通过几次commit来认识工作区和暂存区
06 | 给文件重命名的简便方法
07 | 通过git log查看版本演变历史
08 | gitk:通过图形界面工具来查看版本历史
09 | 探密.git目录
10 | commit、tree和blob三个对象之间的关系
11 | 小练习:数一数tree的个数
12 | 分离头指针情况下的注意事项
13 | 进一步理解HEAD和branch
14 | 怎么删除不需要的分支?
15 | 怎么修改最新commit的message?
16 | 怎么修改老旧commit的message?
17 | 怎样把连续的多个commit整理成1个?
18 | 怎样把间隔的几个commit整理成1个?
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 -f操作
40 | 禁止向集成分支执行变更历史的操作
41 | GitHub为什么会火?
42 | GitHub都有哪些核心功能?
43 | 怎么快速淘到感兴趣的开源项目?
44 | 怎样在GitHub上搭建个人博客
45 | 开源项目怎么保证代码质量?
46 | 为何需要组织类型的仓库?
47 | 创建团队的项目
48 | 怎样选择适合自己团队的工作流?
49 | 如何挑选合适的分支集成策略?
50 | 启用issue跟踪需求和任务
51 | 如何用project管理issue?
52 | 项目内部怎么实施code review?
53 | 团队协作时如何做多分支的集成?
54 | 怎样保证集成的质量?
55 | 怎样把产品包发布到GitHub上?
56 | 怎么给项目增加详细的指导文档?
57 | 国内互联网企业为什么喜欢GitLab?
58 | GitLab有哪些核心的功能?
59 | GitLab上怎么做项目管理?
60 | GitLab上怎么做code review?
61 | GitLab上怎么保证集成的质量?
62 | 怎么把应用部署到AWS上?
本节摘要

课件下载地址:

https://gitee.com/geektime-geekbang/Git-Learning

项目相关文件下载地址

https://github.com/git201901/git_learning_master_6_commits/archive/27d2f8146eabcf2782e87ce445b8469cc1accc73.zip

index.html 文件中增加的代码

复制代码
<footer>
<p>
<a href="https://github.com/TTN-js/unforGITtable"> 参考项目 01</a>
</p>
</footer>

style.css 文件中增加的代码

复制代码
footer{
right: 0;
bottom: 0;
position: relative;
padding: 10px 1rem 10px 0;
margin-top: 50px;
font-size: 0.7em;
text-align: right;
}
footer p{
margin-bottom:0;
}
展开
登录 后留言

全部留言(68)

  • 最新
  • 精选
我来也
之前在 https://git-scm.com/ 官网上自学了一遍. 基本的操作是会了, 但是高级用法平常用的不多,也就忘得差不多了. 现在再跟着老师学一遍, 一来是查漏补缺,二来是开开眼界,看别人是怎么使用的. 比如今天就学了个乖, git add -u 可以直接添加所有已经追踪的文件. 之前我都是偷懒 直接用的git add .

作者回复: 对的,用 -u 有个好处,避免把工作区没准备好的新文件直接加到暂存区了。

2018-12-11
20
德育处主任
课程中使用的几个命令,对应windows版: # 清屏 Mac: clear Windows: cls # 展示文件夹内的内容 Mac: ls -al Windows: dir # 展示文件内容(比如展示style.css的内容) Mac: vi style.css Windows: more style.css

作者回复: 👍

2019-06-14
3
19
luoChao
git add .:将工作空间新增和被修改的文件添加的暂存区 git add -u:将工作空间被修改和被删除的文件添加到暂存区(不包含没有纳入Git管理的新增文件) 之前都是习惯使用git add .

作者回复: 👍

2018-12-13
18
skyyws
看了上面的留言,自己实际测试了一下发现: git add .|-A|--all,这三个选项都可以把所有的操作文件创建,文件修改,文件删除)添加到暂存区,感觉功能上是一样的。 git add -u,可以把文件的修改和删除添加到暂存区,而新建的文件不会被添加到暂存区。 想请教下老师,为什么都说git add .,不会添加删除的文件?我实际测试的结果,.和-A的效果是一样的。

作者回复: 嗯,git高版本也能也可以处理删除的文件了。

2019-02-25
7
orange0729
苏老师您好,关于您说明的暂存区具有方便的回退功能,正式提交后不是也能回退到历史版本吗?那么暂存区回退的好处是什么呢?初学git,问题比较小白,劳烦您解惑

作者回复: 我们可以这样来思考,一个问题在解决掉之前,我可能需要反复修改几个相同的文件,等一种方式测试后,我先把涉及的变更存到暂存区,然后在工作目录又开始改代码,试试其他方法会不会更好。最后再确定最后的变更,然后形成commit。 正式提交后固然也能回退,但毕竟没有暂存区便捷。

2019-07-11
6
isunsw
经过个人测试之后,回答一下同道学习者提出的以下问题: git 1.x版本中 git add . 和 git add -A 确实存在能否追踪到已删除文件的区别;但在 git 2.x 版本中,已经没有此区别了。 “ converse✪ 2019-03-12 测试git add .与 git add -A 效果一样啊,都能跟踪到删除的文件。看到评论中很多说git add .对删除文件不起作用。麻烦老师看看。 ”

作者回复: 👍,我在2.21.0.windows.1版本上验证add . 和 add -A 效果一样。

2019-04-22
2
4
王洋
$ git push origin master:master #本地仓库master分支推动到远程仓库的master分支 $ git push origin master      #本地仓库当前分支的推送到master分支 $ git push             #将当前本地仓库所在分支提交到远程相同分支下   苏老师,我这个理解正确嘛,因为根据实际的操作得到的是这个意思,但是其中根本的区别是什么呢? 

作者回复: 很好的问题。 3)因为 origin 是缺省的 remote url; 2)git push origin master,后面没带远端的master,那是因为git已经为本地的master分支和远端的分支建立了所谓的 upstream 的关联,它知道本地master对应远端的master分支。当然,git也允许我们修改本地分支的 upstream。可以看看 git branch --set-upstream 命令。 1)git push origin master:master 这个是完整版本。:前面的是本地分支名称,:后面的是远端分支的名称。

2019-02-02
4
多多
vi style.css 查看css文件,之后怎么退回到命令行的呀,快捷键?谢谢

作者回复: 命令行模式下用英文输入法输入:q! 后回车。如果需要保存修改,用英文输入法输入:wq! 后回车

2018-12-12
2
4
Lindroid
老师在视频里使用“vi 文件名”使用vim打开文件在windows中是需要配置的,可以参考这篇博客:https://www.jianshu.com/p/fba13c5bbf83。

作者回复: 好热心,👍

2019-06-02
3
converse✪
测试git add .与 git add -A 效果一样啊,都能跟踪到删除的文件。看到评论中很多说git add .对删除文件不起作用。麻烦老师看看。

作者回复: 补充一点,add . 是对当前路径及其子路径下的变更有效。而 add -A 是整个仓库。

2019-03-12
2
3
收起评论