Git-Git里程碑
摘要:里程碑即Tag,是人为对提交进行的命名。这和Git的提交ID是否太长无关,使用任何数字版本号无论长短,都没有使用一个直观的表意的字符串来得方便。例如:用里程碑名称“v2.1”对应于软件的2.1发布版本就比使用提交ID要直观得多。 使用git describe命令显示里程碑和提交ID的组合来代表软件的
阅读全文
posted @
2018-01-29 22:55
uetucci
阅读(686)
推荐(2)
Git-冲突解决
摘要:拉回操作中的合并 用户user1执行git pull操作解决非快进式推送问题似乎非常的简单,就好像直接把共享版本库中最新提交直接拉回到本地,然后就可以推送了,其他好像什么都没有发生一样。真的是这样么? 用户user1向共享版本库推送时,因为user2强制推送已经改变了共享版本库中的提交状态,导致us
阅读全文
posted @
2018-01-24 23:03
uetucci
阅读(619)
推荐(0)
Git-Git协同与工作协同
摘要:Git支持的协议 首先来看看数据交换需要使用的协议。 Git提供了丰富的协议支持,包括:SSH、GIT、HTTP、HTTPS、FTP、FTPS、RSYNC及前面已经看到的本地协议等。各种不同协议的URL写法如表15 1所示。 |协议名称|语法格式|说明| | | | | |SSH协议(1)|ssh:
阅读全文
posted @
2018-01-22 22:32
uetucci
阅读(212)
推荐(0)
Git-Git库管理
摘要:对象和引用哪里去了? 从GitHub上克隆一个示例版本库,这个版本库在“历史穿梭”一章就已经克隆过一次了,现在要重新克隆一份。为了和原来的克隆相区别,克隆到另外的目录。执行下面的命令。 进入克隆的版本库,使用git show ref命令看看所含的引用。 其中以refs/heads/开头的是分支;以r
阅读全文
posted @
2018-01-18 23:12
uetucci
阅读(261)
推荐(0)
Git-Git克隆
摘要:鸡蛋不装在一个篮子里 Git的版本库目录和工作区在一起,因此存在一损俱损的问题,即如果删除一个项目的工作区,同时也会把这个项目的版本库删除掉。一个项目仅在一个工作区中维护太危险了,如果有两个工作区就会好很多。 上图中一个项目使用了两个版本库进行维护,两个版本库之间通过拉回(PULL)和/或推送(PU
阅读全文
posted @
2018-01-17 22:59
uetucci
阅读(268)
推荐(0)
Git-改变历史
摘要:悔棋 在日常的Git操作中,会经常出现这样的状况,输入git commit命令刚刚敲下回车键就后悔了:可能是提交说明中出现了错别字,或者有文件忘记提交,或者有的修改不应该提交,诸如此类。 Git提供了“悔棋”的操作,甚至因为“单步悔棋”是如此经常的发生,乃至于Git提供了一个简洁的操作——修补式提交
阅读全文
posted @
2018-01-11 23:10
uetucci
阅读(272)
推荐(0)
Git-历史穿梭
摘要:图形工具:gitk gitk是最早实现的一个图形化的Git版本库浏览器软件,基于tcl/tk实现,因此gitk非常简洁,本身就是一个1万多行的tcl脚本写成的。gitk的代码已经和Git的代码放在同一个版本库中,gitk随Git一同发布,不用特别的安装即可运行。gitk可以显示提交的分支图,可以显示
阅读全文
posted @
2018-01-10 00:20
uetucci
阅读(315)
推荐(0)
Git-Git基本操作
摘要:先来合个影 马上就要和之前实践遗留的数据告别了,告别之前是不是要留个影呢?在Git里,“留影”用的命令叫做tag,更加专业的术语叫做“里程碑”(打tag,或打标签)。 通过记录提交ID(或者创建Tag对象)来为当前版本库状态进行“留影”。 留过影之后,可以执行git describe命令显示当前版本
阅读全文
posted @
2018-01-06 00:33
uetucci
阅读(235)
推荐(0)
GIt-恢复进度
摘要:继续暂存区未完成的实践 经过了前面的实践,现在DEMO版本库应该处于master分支上,看看是不是这样。 还记得在之前“Git暂存区”的结尾,是如何保存进度的么?翻回去看一下,用的是git stash命令。这个命令用于保存当前进度,也是恢复进度要用的命令。 查看保存的进度用命令git stash l
阅读全文
posted @
2018-01-03 23:51
uetucci
阅读(298)
推荐(0)
Git-GIt检出
摘要:实际上在执行重置命令的时候没有使用任何参数对所要重置的分支名进行设置,这是因为重置命名实际上所针对的是头指针HEAD。之所以没有改变HEAD的内容是因为HEAD指向了一个引用refs/heads/master,所以重置命令体现为分支“游标”的变更,HEAD本身一直指向的是refs/heads/mas
阅读全文
posted @
2018-01-02 23:58
uetucci
阅读(228)
推荐(0)
GIt-重置
摘要:master分支在版本库的引用目录(.git/refs)中体现为一个引用文件.git/refs/heads/master,其内容就是分支中最新提交的提交ID。 通过对提交本身数据结构的分析,看到提交可以通过到父提交的关联实现对提交历史的追溯。注意:下面的git log命令中使用了 oneline参数
阅读全文
posted @
2018-01-02 22:37
uetucci
阅读(293)
推荐(0)