git-2

1.分离头指针情况下的注意事项

分离头指针指的是变更没有基于某个branch去做,所以当进行分支切换的时候,在分离头指针上产生的commit,很可能会被git当作垃圾清理掉,如果你认为是重要的内容,切记需要绑定分支

2.进一步理解HEAD和branch

git checkout -b fix_readme fix_css 在fix_css分支上创建新分支,并切换到改分支

HEAD最终会落脚于某个commit,不管处于分离头状态还是HEAD指向分支的最新一次提交的commit

HEAD

HEAD^ (HEAD~1)代表HEAD的父亲

HEAD^^ (HEAD~2)代表HEAD父亲的父亲

3.怎么删除不需要的分支?

一般-d 删除,如果报没有被merge,则用-D 进行删除分支

4.怎么修改最新commit的message?

git commit --amend 修理一下

对最近一次提交的commit做变更

5.怎么修改老旧commit的message?

发展分支上的任何一个commit 进行调整,用rebase,前提是这些变基行为是在自己的分支上做变更,还没有贡献到团队的集成分支上,如果已经在集成分支上,就不能随意的变基

git log -3 最近3次提交

基于父亲文件进行

git rebase -i 选择被变的父亲 其中-i交互式

修改后进行保存,保存后会自动跳转新的页面

6.怎样把连续的多个commit整理成1个?

把之前不清晰的更改成更加清晰的commit

下面是git rebase -i cb3ca9451f5cbdb 之后的结果

自动跳转到新的页面

7.怎样把间隔的几个commit整理成1个?

8.怎么比较暂存区和HEAD所含文件的差异?

git diff --cached 暂存区和HEAD的差异

9.怎么比较工作区和暂存区所含文件的差异?

指定几个文件就可以比较几个文件的差异

git diff 默认比较工作区和暂存区的区别

git diff 把所有的差异都展示出来

git diff -- 文件名 是对具体文件的差异展示出来

git diff -- 文件名1 文件名2 文件名3 可以是多个文件的差异

10.如何让暂存区恢复成和HEAD的一样?

git reset 更强大,可以修改提交历史和分支引用,而git reset 更专注于工作区和暂存区的文件还原

git diff --cached 返回为空,则表明暂存区和工作区一致

git reset HEAD 暂存区所做的变更不想要了,一刀切,恢复成现在最新的分支commit,也就是HEAD指向的这些文件的模样

相关推荐
weixin_4334176714 小时前
TortoiseGit推送到远端,如何配置
windows·git
Hey_Coder1 天前
【Git 常用命令速查表(按功能分类)】
git·git基础命令·git命令速查表·git 常用命令
colman wang1 天前
Git指令(Mac)
git·macos
cyforkk2 天前
Git 合并分支提示 Already up to date 的真实原因
git
●VON2 天前
HarmonyKit | 移动端开发者工具类应用的现状与趋势
git·华为·性能优化·harmonyos·鸿蒙
●VON2 天前
HarmonyKit | 鸿蒙开发协作:如何为 HarmonyKit 贡献一个新的工具
git·华为·harmonyos·鸿蒙
枕星而眠2 天前
Git仓库基础用法
大数据·git·后端·elasticsearch·全文检索
梦想三三2 天前
Git与GitHub基础入门:从零开始掌握版本控制与代码托管(完整图文教程)
人工智能·git·elasticsearch·github
Joy-鬼魅2 天前
Git常用操作
git
流浪0013 天前
Git篇(三):吃透远程协作:SSH 密钥、分支、标签全流程实战指南
运维·git·ssh