Git版本管理介绍(一)

集中式版本控制系统

CVS及SVN都是集中式的版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。集中式版本控制系统最大的毛病就是必须联网才能工作,若控制系统的中央服务器出了问题,所有人就都没法干活了。

分布式版本控制系统

Git是分布式版本控制系统,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

分布式版本控制系统的安全性更高,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了,从其他人那里复制一个就可以了。在实际使用分布式版本控制系统的时候,很少在两人之间的电脑上推送版本库的修改,通常有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

文本文件v.s.图片视频

所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外。版本控制系统可以告诉你每次的改动,比如在第5行加了一个单词“Linux”,在第8行删了一个单词“Windows”。而图片、视频这些二进制文件,虽然也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是只知道图片从100KB改成了120KB,但到底改了啥,版本控制系统不知道,也没法知道。

git config命令,配置机器id信息,global参数

Git是分布式版本控制系统,每个机器都必须登记自己的相关id信息。git config命令用了global参数,表示所配置机器上所有的Git仓库都使用相同的配置,当然也可以对某个仓库指定不同的用户名和Email地址。

YYwhdeMacBook-Pro:~ yywh$ ls
Desktop			Music			anaconda3
Documents		Pictures		eclipse
Downloads		Public			eclipse-workspace
IdeaProjects		PycharmProjects		workspace
Library			SELF_USE_LEARN		
YYwhdeMacBook-Pro:~ yywh$ git config --global user.name "Yu Yg"
YYwhdeMacBook-Pro:~ yywh$ git config --global user.email "[email protected]"

git init命令,把“创建的版本库/仓库目录”变成“Git可管理的仓库”

YYwhdeMacBook-Pro:~ yywh$ mkdir GITWORKSPACE
YYwhdeMacBook-Pro:~ yywh$ cd GITWORKSPACE/
YYwhdeMacBook-Pro:GITWORKSPACE yywh$ git init   #
Initialized empty Git repository in /Users/yywh/GITWORKSPACE/.git/
YYwhdeMacBook-Pro:GITWORKSPACE yywh$ ls -ah
.	..	.git

本文是参考廖雪峰的git教程学习笔记。

猜你喜欢

转载自blog.csdn.net/cymy001/article/details/81262819