关于git和github的学习

https://www.bilibili.com/video/BV1pW411A7a5?p=7&spm_id_from=pageDriverhttps://www.bilibili.com/video/BV1pW411A7a5?p=7&spm_id_from=pageDrivericon-default.png?t=L9C2https://www.bilibili.com/video/BV1pW411A7a5?p=7&spm_id_from=pageDriver感谢尚硅谷团队的开源教程

感谢教授这门课程的老师

Git的结构:

git和github的关系就是系统和托管中心的关系:

本地库和远程库的交互:

一种是团队内部协作

一种是跨团队协作

git的命令行操作:

本地库初始化

 在我们工作的文件夹里边进行初始化,比如说创建一个test文件夹,里边可能会放几个.py文件,就可以对test文件夹初始化,git init

设置签名:

 

访问保存的配置,cat .git/config

git的基本操作:

nothing to commit (create/copy files and use "git add" to track)意思就是可以添加文件到暂存区,由git来进行追踪、管理

假设工作区只有一个文件,并且将这个文件添加到了暂存区,状态变成了

 unstage 表示拆箱,如果文件没有被git track,那么文件的状态表示为unstage.

其作用在于将文件从暂存移除

 我们的第一次提交也就是根提交 ,显示有一个文件修改了,修改的内容是添加了一行

修改文件之后,再查看工作区和暂存区的状态:

为分阶段提交的变化:

要么用git add去更新暂存区

要么用git restore放弃这个变化

对于这种已经被git追踪的文件,可以直接使用git commit -a直接更新这个变化

另外,对于已经被追踪的文件,将他从暂存区移除的方式会发生变化:

将更新从暂存提交至本地库,如果不想进vim写版本更新日志,可以用以下命令:

 linux中经常见到这个-m,mode?

如何切换版本??

 一条日志要占用5行,一旦日治多了,以这种形式显示是很冗余的

这表示以一行的形式显示日志

更简洁的命令是:

这样哈希标签值只部分显示,更加简洁

reflog = reference log,参考日志。他将显示回退到某个历史版本的步长是多少

有三种方法实现版本的前进后退

 ^ 异或符号,~ 波浪符号

 关于git reset --hard [索引值]中的hard

linux终端要查询某个关键字,可以git help reset

用git status查看暂存区文件的状态,是绿色的modified

查看暂存区文件的状态,是红色的modified

 

git是对他初始化的工作区变化的记录,这个记录包括对已经提交记录的文件的删除

删除文件:rm [file name]

删除记录也要提交到本地库,都可以通过log来查看

Q:每次reset实际上也会被记录到log里面,那log岂不是会变得很繁杂?? 

文件的比较

git是以行为单位进行文件管理,将文件第一次提交到本地库时,会返回文件的行数

这里没太明白,比如将一个文件已经提交到本地库,然后修改它,新的文件是在工作区。这个时候使用diff是比较的工作区和暂存区吗??

将新文件添加到暂存区,使用diff,此时没有输出???

diff 可以指定和本地库的之前版本比较

当新文件只在工作区时也可以与本地库指定版本的文件比较

一般默认是在master分支下面,但很多时候我们不想直接在主干网上修改

所谓被合并的分支,即合并之后留下的那个分支。比如将hot_fix和master合并,被合并的分支就是master。但其实hot_fix这个分支还是存在

 合并之后,hot_fix分支做的修改就会出现在master分支的相关文件上

出现冲突的时候,需要人工干预,手动修改错误。git的状态仍然是合并状态,所以上面的第四步要求提交到本地库的时候不能带文件名 

Q:git是如何实质性的实现版本控制??

简单说,当我们在git bash中切换到某个文件的某个历史版本的时候,在git之外打开这个文件,就是相应版本的文件。导出某个版本的文件很方便

集中式版本控制使用增量式更新,节约存储空间

 

 

是否可以这样理解,每次有新的版本提交,就要对本地库的所有文件进行快照

这里提到的blob, binary large object,二进制大对象,是一个可以存储二进制文件的容器

BLOB是一个大文件,典型的BLOB是一张图片或一个声音文件

在YOLO,CAFFE中都提到了blob,caffe中使用blob这种数据结构,

远程库和本地库没有规定必须同名,但一般同名

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值