Git学习总结1

Git是目前世界上最先进的分布式版本控制系统(没有之一) Git有什么特点?简单来说就是:高端大气上档次!

版本   文件名    用户 说明                             日期 1    service.doc 张三 删除了软件服务条款5 7/12 10:38 2    service.doc 张三 增加了License人数限制 7/12 18:09 3   service.doc 李四 财务部门调整了合同金额 7/13 9:51

4 service.doc 张三 延长了免费升级周期 7/14 15:17

1、安装 git config –global user.name “lkp” git config –global user.email “1120262296@qq.com”


2、创建空目录 mkdir learngit cd learngit pwd //当前位置


3、把这个目录变成Git可以管理的仓库 git diff


4、把文件添加到版本库 将文件放到管理仓库中 git add readme.txt //将我呢见提交到暂存区 git commit -m “wrote a reanme file” //将文件从暂存区提交和进行注释


5、仓库当前的状态 git status //显示工作目录和暂存区的状态


6、显示上次对文件的修改 git diff


7.查看历史记录 git log git log –pretty=oneline //输出较少内容 一大串1094adb….是commit id(版本号),十六进制


8.把readme.txt回退到上一个版本,首先知道当前的版本,有HEAD表示,上一个版本 是HEAD^,上上一个版本是HEAD^^,往前100个版本是HEAD~100. git reset –hard HEAD^//回退到上一个版本 现在从21世纪回到了20世纪,我还想回去怎么办? (1)只要当前窗口没关,用 git reset –hard 1094a(版本号) //回到21世纪 Git的回退速度非常快,因为Git内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD指针改变。 (2)电脑已经关机 git reflog //记录你的每一次命令 找到上一次的版本号即可。


9.工作区和暂存区 learngit文件夹就是一个工作区 .git是Git的版本库,版本库中有称为stage(index)的暂存区。Git还自动创建了第一个分支master,以及指向master的一个指针HEAD 添加文件的两步: 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。主要是注释


10.为什么Git比其他版本控制系统设计得优秀, 因为Git跟踪并管理的是修改,而非文件


11.撤销修改 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD ,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库 git reset –hard head。


12.删除文件 rm test.txt//从工作去删除 (1)确实要删除 git rm test.txt //从版本库删除 git commit -m “delete test.txt” (2)若不想继续删除(从工作区删除后) git checkout – test.txt//用版本库里的版本替换工作区的版本(删除和修改都是) (3)若从版本库删除后,想要恢复,参考第11条


本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏斑斓

【工具箱】GIT的使用场景

无论学习什么技术,都需要了解该技术的本质。若是靠死记硬背该技术提供的方法或者语法,终归是知其然而不知其所以然,当发现错误时,你根本不知道是什么原因导致的。我在使...

3264
来自专栏青玉伏案

Cocoa包管理器之CocoaPods详解

CocoaPods在Cocoa开发日常工作中经常用到的包管理器,即依赖管理工具。有的项目也有用Carthage的,Carthage是一个比较新的依赖管理工具,是...

1214
来自专栏祝威廉

HBase缓存漫谈

上一次重度使用HBase已经是两年前了。HBase能够满足上面五个要求,所以用HBase作为画像体系的主要存储引擎便水到渠成。

1152
来自专栏Web项目聚集地

Git常用命令速查表(收藏大全)

Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。

1062
来自专栏大闲人柴毛毛

Git命令速记

生成SSH Key ssh-keygen -t rsa -C "youremail@example.com" 在用户主目录里找到.ssh目录 将id_rsa....

35810
来自专栏C/C++基础

Linux命令(45)——svn命令

SVN是Apache Subversion的缩写 ,是一个开放源代码的版本控制系统。相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联...

902
来自专栏腾讯云容器服务团队的专栏

Kubernetes 资源分配之 Request 和 Limit 解析

Kubernetes 是一个容器集群管理平台,Kubernetes 需要统计整体平台的资源使用情况,合理地将资源分配给容器使用,并且要保证容器生命周期内有足够的...

4K4
来自专栏影子

关于Springmvc中include与Sitemesh装饰器的基本使用

1152
来自专栏xcywt

记录我开始学习 Git的路程

工作半年多了,总觉得没学到什么东西,于是乎找了个Git学习一下,感觉还蛮厉害的样子。为此记录下我的路程 2015,11,26 更新   前面的路都挺艰难的,在官...

2157
来自专栏腾讯DevOps

Git的后悔药

这种情况是你已经把一个文件修改了add到暂存区了,但又想重新放回工作区,这种不会更改本地磁盘的文件

2096

扫码关注云+社区

领取腾讯云代金券