一、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简介与入手(一)的更多相关文章

  1. git 和github简介

    关于github不清楚的可以百度, 在这里,可以创建一个新的仓库 点击Create repository后会出现下面这些信息,其中第一块是仓库的url链接 第二块是你在本地目录中创建一个READEME ...

  2. git的简介,安装以及使用

    1git的简介 Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git有什么特点?简单来说就是:高端大气上档次! 2Linus一直痛恨的CVS及SVN都是集中式的版本控制系 ...

  3. Git & Github 一页简明笔记

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...

  4. Git入门简介

    ​1. Git 背景 Git 最初由Linus Torvalds编写,用于 Linux 内核开发的版本控制工具. Git 与常用的版本控制工具 CVS.Subversion 等不同,它采用了分布式版本 ...

  5. Git & Github 一页简明笔记(转)main

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解. 0. 常用命令一览 ...

  6. Git/Github的使用并与Eclipse整合(zz)

    Git/Github的使用并与Eclipse整合 您的评价:          收藏该经验       Git简介 Git是一个免费的.分布式的版本控制工具,或是一个强调了速度快的源代码管理工具.每一 ...

  7. Git/Github的使用以及与Eclipse的整合

    Git简介       Git是一个免费的.分布式的版本控制工具,或是一个强调了速度快的源代码管理工具.每一个Git的工作目录都是一个完全独立的代码库,并拥有完整的历史记录和版本追踪能力,不依赖于网络 ...

  8. git学习——简介、使用(一)

    本文是作者参考其他教程学习git的记录,原文:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c01 ...

  9. Python开发【笔记】:git&github 快速入门

    github入门 简介: 很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了. Linus虽然创建了Linux,但Linux的壮大 ...

  10. [Git/Github] ubuntu 14.0 下github 配置

    转载自:http://www.faceye.net/search/77573.html 一:创建Repositories1:首先在github下创建一个帐号.这个不用多说,然后创建一个Reposito ...

随机推荐

  1. 在Mac上不常用但会用到的命令

    文章目录 1. chflags 2. rename 1. chflags chflags hidden filename 给文件添加隐藏属性 chflags nohidden filename 去掉文 ...

  2. python创建线程传参误区记录

    创建线程可以使用threading模块中的Thread子类: 其中Thread子类允许的参数如下: (self, group=None, target=None, name=None, args=() ...

  3. 【读书笔记】Young Tableau_Calculus of tableaux_bumping and sliding

    目录 bumping Schensted bumping algorithm 举例 sliding/digging a hole 一些定义 Schiitzenberger sliding algori ...

  4. 重学c#系列—— explicit、implicit与operator[三十四]

    前言 我们都知道operator 可以对我们的操作符进行重写,那么explicit 和 implicit 就是对转换的重写. 正文 explicit 就是强制转换,然后implicit 就是隐式转换. ...

  5. Java面试——Java基础

    更多内容,移步IT-BLOG 一.JAVA中的几种基本数据类型 Java语言中一共提供了8种原始的数据类型(byte,short,int,long,float,double,char,boolean) ...

  6. rocketMq和kafka对比

    为什么在RocketMQ和kafka中选型 在单机同步发送的场景下,Kafka>RocketMQ,Kafka的吞吐量高达17.3w/s,RocketMQ吞吐量在11.6w/s. kafka高性能 ...

  7. $\mathcal{Friends\,\,Of\,--Mathic}$

  8. jq-ajax-get

    get有三个参数,第一个时候url,第二个是数据,第三个是回调函数(可以用返回值表示,如下所示) 执行正确时,返回的依次是res,type,xhr. 执行错误连接不上的的依次是xhr,type,res ...

  9. Hugging News #0331: Hugging Papers 来啦,快来认领你的论文!

    每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新.社区活动.学习资源和内容更新.开源库和模型更新等,我们将其称之为「Hugging Ne ...

  10. selenium验证码处理-打码平台操作

    1.进入打码平台(超人,斐斐) 斐斐-------官网: 超人-------官网: 2.选择对应的开发文档,下载对应的demo示例,并把demo的python脚本放到项目包管理地址去 参考: 超人的开 ...