玩转 Git 三剑客
苏玲
携程代码平台负责人
60828 人已学习
新⼈⾸单¥68
课程目录
已完结/共 62 讲
第三章:Git与GitHub的简单同步 (4讲)
第五章:Git集成使用禁忌 (2讲)
玩转 Git 三剑客
登录|注册
留言
15
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 38 | 把同一文件改成了不同的文件名如何处理?
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上?
登录 后留言

全部留言(15)

  • 最新
  • 精选
127.0.0.1
请问git能不能merge 其他分支的指定文件

作者回复: 根据你的问题,我先查了merge命令,且动手测试了,发现该命令不提供这个功能,但是有其他方法。 以后大家有问题,可以google或必应上用英文搜索git的问题。https://stackoverflow.com/questions/5717026/how-to-git-cherry-pick-only-changes-to-certain-files 这里面我看 git show SHA -- file1.txt file2.txt | git apply --cached - 这个方法应该可以满足你的要求。 假设 f1 和 f2 两个分支,f2改了 readme ,a.java,b.java这三个文件,f1 想直接把f2最新修改的 readme 和 b.java 同步过来。那么: 1)先切换到 f1 分支。 2)执行 git show f2 -- readme b.java | git apply - 3) f1 测试没问题后,再执行 add 和 commit 命令 4)f1 的readme和b.java内容就喝 f2 相同了。

2019-06-17
19
Gemini
如果有些文件不想加入版本控制,也不想提交到远端,可以按如下步骤操作: 1.git ls-files查看暂存区内已进行版本控制的文件 2.git rm --cached 〈文件名〉将文件移除版本控制 3.编辑.gitignore文件,将不想加入版本控制的文件写进去,详细方法可参考github上的.gitignore文件。 如果有描述不准确的地方还请批评指正

作者回复: 🐂

2019-01-13
16
LVM_23
老师,你好。想问一下比较简单的多人协助开发代码怎么管理代码分支合并? 现在我作为一个小组长,每天要合并各个成员的代码,打包到测试、预上线等等环境。又涉及到出错回滚等等。每天都花挺多时间在这里。老师能否给个流程或者建议。谢谢了

作者回复: 你们看起来配置了专门的集成人员,你就充当了类似的角色。我补充说一下,如果你是懂业务并懂开发的,那么你来做这个涉及集成的一系列的工作,倒也挺好。 否则就让开发自己来做集成。 为了早点发现集成是否有冲突,或者集成是否能通过一些列的测试,你们团队可以考虑用工具帮你们尽快发现集成的问题。找一些持续集成的资料看看吧,可以借助 Jenkins 或 其他CI工具试试吧。

2020-05-27
3
pyhhou
可能我描述问题不够清晰,其实我是想说有时我们可能会往github错提交一些文件,我们在本地运行项目需要用到这些文件,但是并不想把它们提交到github上去,像是.project,.prettierrc,如果仅仅用git rm再push的话,本地和远端的文件都会被删除,在远端删除后pull也是同理,查了一下发现有一个git rm --cache 命令可以只删除远端文件而保留本地文件,并且这个命令还会自动帮你把该文件加入到.gitignore里面去,保证以后也不会被提交到远端,在这种情况下比较方便 另外就是,试过在在命令行里用git checkout 直接切换到远端branch,貌似会到一个分离头指针的状态,不知道为什么,望老师指点。

作者回复: "另外就是,试过在在命令行里用git checkout 直接切换到远端branch,貌似会到一个分离头指针的状态,不知道为什么,望老师指点。" 远端分支只能看,不能用于呈现远端的变更。用 checkout 的目的是切换到某个分支,继续变更。因此,为了保证远端就是远端,不用于本地变更,所以变成分离头了,省得误导大家(以为切换到远端分支,生成commit,难不成远端分支就发生变化。这种理解是不对的。)

2019-01-11
3
pyhhou
请教一下老师,最近遇到一个问题,创建了一个.gitignore文件但是里面ignore的东西没写全,导致不希望上传的东西上传了,这时把.gitignore文件需要ignore的东西补上,git pull 下来然后再push上去后发现GitHub上面希望ignore的文件还在,这该怎么处理?在远端直接删除?这样对本地是否有影响呢?

作者回复: 某文件先纳入到git管理,后面在.gitignore里添加了该文件,只会让git以后不会添加此文件。 如果仅仅想从现在开始不要有该文件,那么git本地用git rm 删除掉该文件,然后push到远端即可。 如果在远端删除了该文件,那么git pull --rebase 后,本地分支也会随着远端一样删除掉该文件。 假如有些敏感信息提交了,想彻底地从该仓库删除不该上传的文件,不妨看一下github提供的方法: https://help.github.com/articles/removing-sensitive-data-from-a-repository/

2019-01-04
3
ME进哥哥
老师如果两个人同时修改了同一文件的文件名和文件内容,文件内容可能是同一区域或不同区域,这种有什么处理方法吗?
2020-05-08
1
1
罗小黑
我这边提示的: CONFLICT (rename/rename): index.htm renamed to index1.html in HEAD and to index2.html in a9fxxxxxxxxxxxxxxxxxxxxxxx Automatic merge failed; fix conflicts and then commit the result. 自动merge失败 我手动删除的,然后add, commit,push 怎么会和老师的不一样呢?
2022-06-11
fried_chicken
老师我没有理解为什么rm index2以后就可以是fastforward了
2020-10-12
可以标准化的git都会为我们处理好,如果是个性化或怎么都行的那只能自己决定了。
2020-03-01
路人甲
最后决定用index2.htm 时, git_learning 是不是需要git pull 下?
2020-02-26
收起评论