赞
踩
版本控制
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
版本控制系统发展可以分为 本地版本控制系统、集中式版本控制系统以及分布式版本控制系统三个阶段。
本地版本控制系统
本地版本控制系统中最流行的一种叫做 RCS,现今许多计算机系统上都还看得到它的踪影。 RCS 的工作原理是在硬盘上保存补丁集(补丁是指文件修订前后的变化);通过应用所有的补丁,可以重新计算出各个版本的文件内容。示意图如下:
集中化的版本控制系统
本地版本控制系统尽管可以管理各个版本的文件内容,但是如果碰见多人合作开发一个项目就没有什么大的优势了,于是,集中化的版本控制系统(Centralized Version Control Systems,简称 CVCS)应运而生。 这类系统,比如我们常用的Subversion 以及 Perforce 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。示意图如下:
相对于本地版本控制系统,现在,每个人都可以在一定程度上看到项目中的其他人正在做些什么。 而管理员也可以轻松掌控每个开发者的权限,并且集中管理一个 CVCS 要远比在各个客户端上维护本地数据库方便。
当然,缺点也显而易见,常说鸡蛋不要放在同一个篮子中,现如今所有版本数据都存放在中央服务器中,假若中央服务器发生故障,则所有的数据都会丢失。
分布式版本控制系统
于是分布式版本控制系统(Distributed Version Control System,简称 DVCS)面世了。 在这类系统中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照, 而是把代码仓库完整地镜像下来,包括完整的历史记录。 这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。 因为每一次从服务器的下载操作,实际上都是一次对代码仓库的完整备份。示意图如下:
不仅如此,许多这类系统都可以指定和若干不同的远端代码仓库进行交互。这样一来,你就可以在同一个项目中,分别和不同工作小组的人相互协作。 你可以根据需要设定不同的协作流程,比如层次模型式的工作流,而这在以前的集中式系统中是无法实现的。
官网安装地址
选择对应的操作系统安装就可以。
点击下载好的安装包安装这个软件,一路默认一直点击到finish。目前新版本Git应该会自动配置环境变量,如果没有配置的话,可以打开你的Git安装目录,找到Git中的cmd文件件,例如我的就是D:\XXX\Git\cmd,然后将该路径复制,右键电脑的属性,找到高级系统设置,点击环境变量进行配置,如下图:
找到系统变量中的path,点击编辑,点击新建,将我们刚复制的路径放进去,Git的环境变量就配置成功了。
此时按下win+R,输入cmd,打开命令行窗口
然后你可以在命令行输入git,弹出如下界面表示安装成功。
我们已经在系统上安装了 Git,接下来定制你的 Git 环境。 每台计算机上只需要配置一次,程序升级时会保留配置信息。 你可以在任何时候再次通过运行命令来修改它们。
Git 自带一个 git config 的工具来帮助设置控制 Git 外观和行为的配置变量。
这些变量存储在三个不同的位置:
1、/etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果在执行 git config 时带上 --system 选项,那么它就会读写该文件中的配置变量。 (由于它是系统配置文件,因此你需要管理员或超级用户权限来修改它。)
2、~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 你可以传递 --global 选项让 Git 读写此文件,这会对你系统上 所有 的仓库生效。
3、当前使用仓库的 Git 目录中的 config 文件(即 .git/config):针对该仓库。 你可以传递 --local 选项让 Git 强制读写此文件,虽然默认情况下用的就是它。。 (当然,你需要进入某个 Git 仓库中才能让该选项生效。)
三个位置的优先级从低到高,.git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。
# 配置用户名
git config --global user.name "username" //( "username"可以用github账户名,)
# 配置邮箱
git config --global user.email "username@email.com" //("username@email.com"注册github账号时用的邮箱)
注意: 我们使用了–global 选项,那么该命令只需要运行一次,之后无论你在该系统上做任何事情, Git 都会使用那些信息。但当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。
配置好自己的用户名和邮箱后,可以通过git config XXX: 来检查 Git 的配置是否成功
git config user.email
git命令颜色设置
Git默认的输出是单一颜色的,有些人可能阅读起来不方便,Git支持用多种颜色来显示其输出的信息。可以针对具体的内容进行自动设置如下:
git config --global color.ui true //启用默认的颜色设置,关闭为false
git config --global color.status auto //自动配置status的输出
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
当然你也可以根据个人喜好进行手动设置,如下例:
git config --global color.diff.meta "red black bold"
这样会将diff的输出以红色字体,黑色背景,粗体显示。
可选项如下:
颜色 | 字体 |
---|---|
normal | bold |
black | dim |
red | ul |
green | blink |
yellow | reverse |
blue | |
magenta | |
cyan | |
white |
常用的Git命令
git config --list //查看所有的配置清单
git branch //查看本地所有分支
git status //查看当前状态
git commit //提交
git log //查看提交日志,按q退出
git diff //查看尚未暂存的更新
git help //查看帮助命令
更多命令可以查看Git常用命令大全
配置别名
配置Git别名可以让大家偷懒一下,如下例用ci替代了commit
git config --global alias.ci commit
配置完成以上别名后,以后提交就可以简写成:
git ci -m "XXX.class"
本文只是粗略介绍Git的安装与使用,详细介绍请查看官方文档
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。