Git&GitHub学习(二)

内容衔接上一篇……Git&GitHub学习(一)

3.5删除文件的找回

前提:文件在被删除前的状态已经被提交至本地库。

  • 删除文件是指在本地库中删除(命令:rm demo2.txt),我们新建一个demo2.txt,删除之后,再查看状态,会发现被删除的文件被标红,并会提示将其存至暂存区与本地库。
  • 也就是再执行git add命令,查看状态,被删除文件被标绿。
  • 执行git commit 命令,文件被加进本地库。
  • 此时查看版本总类git reflog,会发现,删除文件的版本与新建文件的版本都存在,要得到原文件,则直接回退到新建文件的版本,此时用ll命令查看,会发现存在demo.txt与demo2.txt两个文件,且其文件内容也不变。
  • 另外一种情况,若是删除文件且提交至暂存区之后,并未提交至本地库,那么用命令(git reset --hard HEAD)重置暂存区与工作区及本地库,此时用ll命令查看,看见被删除文件存在。
3.6比较文件差异
  • 首先用vim demo.txt打开文件进行一部分改动。
  • 而后用git diff demo.txt 进行文件之间的比较,此时是工作区间的文件进行比较。
  • 用git add demo.txt 将改动后的文件提交至暂存区,再一次git diff,会发现无结果,此时是在暂存区的比较。
  • 用git diff HEAD demo.txt 是将其与本地库中的版本进行比较,若是要与本地库中的某一版本进行比较,则在前者的基础上改动,如:git diff HEAD^ demo.txt
  • 注意:git是以行为单位进行操作,举个栗子:我在第三行加了一部分数据,实际上git会将原第三行全部删除,而后在同样的位置新增修改后的新一行。
3.7分支管理

git的分支管理可用以同时并行推进功能的开发,且各个分支之间彼此独立互不影响,则失败的分支直接删除重新开始即可。

master
master
master
master
feature_blue
feature_blue
feature_game
feature_game
feature_game
hot_fix

上图中,hot_fix是指热修复,即在不停止服务器工作的前提下对master主干进行修复。
master是git创建文件时自行创建的一个分支,即主干。用git status查看状态时显示 on branch master即可知道当前正处于主干上。
主要操作命令:

  • git branch -v 查看所有分支
  • git branch hot_fix 指创建hot_fix分支
  • git checkout master 指切换至master分支

合并分支—举个栗子:分支hot_fix的功能已经实现,故而我想要将其合并至主干,那么先切换至主干,再用git merge hot_fix命令即可将分支hot_fix合并至主干。

  • 合并时出错
<<<<<<<HEAD                                #前三行是当前分支的内容
information changed by hot_fix
========
information changed by master     #后两行是另外一分支的内容
>>>>>>>master
  • 如何导正?
  • 将内容重新进行编辑,直至满意的程度
  • git add filename.txt提交文件,此时仍然处于合并状态
  • git commit -m “日志信息” P:不可带文件名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值