【Git】学习开始

转载:https://www.cnblogs.com/yangchongxing/p/10172683.html

在线电子书籍:https://git-scm.com/book/zh/v2

版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

分布式版本控制系统(Distributed Version Control System,简称 DVCS)面世了。 在这类系统中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。 这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。 因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。

Git在保存和对待各种信息的时候与其它版本控制系统有很大差异,尽管操作起来的命令形式非常相近,理解这些差异将有助于防止你使用中的困惑。

Git基础

1.直接记录快照,而非差异比较

2.近乎所有操作都是本地执行

3.保证完整性

4.一般只添加数据

5.三种状态

  你的文件可能处于其中之一:
  已提交(committed)已提交表示数据已经安全的保存在本地数据库中。
  已修改(modified)已修改表示修改了文件,但还没保存到数据库中。
  已暂存(staged)已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

仓库目录

  Git用来保存项目的元数据和对象数据库的地方。 这是 Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据。

工作目录

  是对项目的某个版本独立提取出来的内容。 这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。

暂存区域

  是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。 有时候也被称作`‘索引’',不过一般说法还是叫暂存区域

基本的 Git 工作流程如下:

  在工作目录中修改文件。
  暂存文件,将文件的快照放入暂存区域。
  提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。

公钥生成

$ ssh-keygen -t rsa -C "yangchongxing@126.com"

/用户/.ssh/id_rsa.pub 中生成了公钥

新建 Git 仓库

创建目录
$ mkdir ycx-new
进入目录
$ cd ycx-new
初始化git仓库
$ git init
新建文件
$ touch README.md
添加文件到暂存区
$ git add README.md
提交文件到本地仓库
$ git commit -m "first commit"
添加远程仓库
$ git remote add origin https://gitee.com/yangchongxing/ycx-new.git
关联并提交文件到远程仓库,第一次加-u参数以后不用加,直接git push origin master
$ git push -u origin master

已有仓库

进入目录
$ cd ycx-exist
添加远程仓库
$ git remote add origin https://gitee.com/yangchongxing/ycx-exist.git
关联并提交文件到远程仓库,第一次加-u参数以后不用,直接git push origin master
$ git pull origin master --allow-unrelated-histories
$ git push -u origin master

最新文章

  1. composer 出现 configuration does not allow connection to http.......
  2. [SDK2.2]Windows Azure Storage (16) 使用WCF服务,将本地图片上传至Azure Storage (上) 客户端代码
  3. 初始angular框架(2)
  4. Seafile内部云盘
  5. 中国Linux源镜像站大全
  6. Oracle表空间不足
  7. [ html canvas putImageData ] canvas绘图属性 putImageData 属性讲解
  8. angular_form
  9. cmake的使用二:链接第三方静态库
  10. char和vchar
  11. CSS浮动、绝对、相对定位
  12. Qt之对话框消失动画
  13. ESC/POS打印控制命令
  14. C语言操作符/表达式及其作用总结
  15. php代码审计——DVWA
  16. python神器之fabric
  17. UVA1374-Power Calculus(迭代加深搜索)
  18. centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试
  19. Ubuntu16.04的sublime text3 的安装教程
  20. 戴尔poweredge r730服务器配置及系统安装详解教程

热门文章

  1. Project Euler 62: Cubic permutations
  2. Centos下的MySQL安装及配置
  3. Java并发之volatile关键字
  4. Viterbi(维特比)算法在CRF(条件随机场)中是如何起作用的?
  5. Netflix 开源 Polynote:对标 Jupyter,一个笔记本运行多种语言
  6. 【Luogu P1878】舞蹈课
  7. 如何搭建Docker私有仓库
  8. 解决配置vim中文乱码的问题
  9. Swift - 给UICollectionview设置组背景和圆角
  10. Spring面试题集锦(精选)