码迷,mamicode.com
首页 > 其他好文 > 详细

Git&GitHub简介与入手(一)

时间:2019-01-28 18:21:26      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:github   inf   png   git命令   更新   没有   分享   17.   bsp   

一、Git版本控制

1、集中式版本控制工具:SVN(版本控制集中在服务器端,会有单点故障风险);

2、分布式版本控制工具:Git;

技术分享图片

3、Git简史

技术分享图片

Talk is cheap, show me the code.(Linus)

技术分享图片

4、https://git-scm.com/ 官网下载安装git

技术分享图片技术分享图片

技术分享图片技术分享图片(后面均使用默认设置);

二、Git&GitHub简介

1.Git的结构与GitHub的关系

技术分享图片技术分享图片

2、Git&GitHub---本地库与远程库的交互方式

(1)团队内的合作

技术分享图片

(2)跨团队协作

技术分享图片

三、Git命令行操作

1、添加,提交

技术分享图片

技术分享图片技术分享图片技术分享图片技术分享图片(项目级别信息保存位置显示)

技术分享图片(系统用户级别信息保存的位置);

技术分享图片(第二句表示本地库中没有东西,第三句表示暂存区中没有什么可提交的。);

 技术分享图片(用vim thy.txt新建了一个文本文件)

技术分享图片(行末换行符进行改变,将文件添加到缓存区);

技术分享图片(文件已经添加至缓存区了,可用提示命令从缓存区撤回);

技术分享图片(git commit thy.txt提交之后,要求对这次改变输入提交信息);

技术分享图片(master根提交,“版本号”,一个文件,一行增加,创建了文件)

技术分享图片(缓存区中没什么提交的,工作树是干净的);

技术分享图片

(对thy.txt进行了修改,用add命令更新到暂存区,或用checkout在你的工作目录里取消修改,暂存区中没没有可提交的修改,用add和commit添加到暂存区并提交,或直接提交);

技术分享图片(使用add后显示status,然后提交,加上-m可以不用进入vim编辑器写提交信息);

技术分享图片

 2、版本穿梭

技术分享图片(commit后面是这次提交的索引,经过哈希算法算出来的,head是指针,指向当前版本,版本穿梭就是移动改指针)

技术分享图片技术分享图片

(三种查看历史记录,reflog能显示所有版本,oneline只能显示过去版本,索引号选中自动复制)技术分享图片

技术分享图片技术分享图片(前进后退都用这个命令)

 技术分享图片(一个^表示后退一个版本,2个后退两个,一次类推,太多了可以用~3表示后退三个版本)

技术分享图片技术分享图片技术分享图片(用HEAD命令使三个区保持一致)

技术分享图片(找回永久删除的文件,回退到过去版本)技术分享图片

技术分享图片技术分享图片

 技术分享图片

技术分享图片

技术分享图片技术分享图片

(冲突,当合并时,发现合并的两个分支被修改了同一个文件的相同位置,就会产生冲突,git不知道要保留哪一个,所以会产生人工合并取舍);

技术分享图片技术分享图片

(哈希算法可以用来检验文件传输是否有损,哇,以前不知道还有这作用0.0);

技术分享图片技术分享图片

技术分享图片技术分享图片

(版本管理是用哈希将每次的提交生成相应的哈希值,然后版本的管理就是一条链表,然后指针在上面移动。)

技术分享图片技术分享图片

(创建分支其实是创建一个指针,而不是真的将文件再复制一遍,分支的切换是移动head指针,所以效率很高!)

 

Git&GitHub简介与入手(一)

标签:github   inf   png   git命令   更新   没有   分享   17.   bsp   

原文地址:https://www.cnblogs.com/Cloud-king/p/10320403.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!