一、Git介绍
Git是一个开源的分布式版本控制系统,最初由Linus Torvalds为Linux内核开发而创建。
Git允许多人同时修改同一个代码库并跟踪所有修改的历史记录。
使用Git可以方便地管理和协调项目代码的开发和维护,在开源社区和软件开发中广泛应用。
Git使用简单的命令行接口,也有许多可视化的图形界面工具可供选择。
此外,Git还提供了强大的分支和合并功能,可以轻松地管理多个开发分支和合并它们的变化。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
二、Git 与 SVN 区别
Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。
如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征。
Git 与 SVN 区别点:
1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。
2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。
3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。
4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。
5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
三、Git 安装配置
在使用Git前我们需要先安装 Git。Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行。
Git 各平台安装包下载地址为:Git - Downloads
1.Linux 平台上安装
Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码,所以需要先安装这些依赖工具。
在有 yum 的系统上(比如 Fedora)或者有 apt-get 的系统上(比如 Debian 体系),可以用下面的命令安装:
各 Linux 系统可以使用其安装包管理工具(apt-get、yum 等)进行安装:
Debian/Ubuntu
Debian/Ubuntu Git 安装命令为:
$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
libz-dev libssl-dev
$ apt-get install git
$ git --version git version 1.8.1.2
Centos/RedHat
如果你使用的系统是 Centos/RedHat 安装命令为:
$ yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
$ yum -y install git-core
$ git --version
git version 1.7.1
源码安装
我们也可以在官网下载源码包来安装,最新源码包下载地址:Git - Downloads
安装指定系统的依赖包:
########## Centos/RedHat ##########
$ yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
########## Debian/Ubuntu ##########
$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
libz-dev libssl-dev
解压安装下载的源码包:
$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
2.Windows 平台上安装
在 Windows 平台上安装 Git 同样轻松,有个叫做 msysGit 的项目提供了安装包,可以到 GitHub 的页面上下载 exe 安装文件并运行:
安装包下载地址:Git for Windows
官网慢,可以用国内的镜像:CNPM Binaries Mirror。
完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。
在开始菜单里找到"Git"->"Git Bash",会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。
3.Mac 平台上安装
在 Mac 平台上安装 Git 最容易的当属使用图形化的 Git 安装工具,下载地址为:
git-osx-installer download | SourceForge.net
安装界面如下所示:
四、安装完成后配置
输入命令设置名字和邮箱
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
设置完成后输入命令查看
git config --global --list
五、创建版本仓库
操作步骤
- 在自己喜欢的地方创建一个目录
- 在命令行终端进入这个目录
- 在这个目录中输入 git init 初始化目录为 Git 仓库
- 初始化完成后,查看仓库目录下是否生成 .git 目录(Linux 下 .开头的文件尾隐藏文件)
六、Git常用命令
1.创建仓库命令
下表列出了 git 创建仓库的命令:
命令 | 说明 |
|
初始化仓库 |
git clone |
拷贝一份远程仓库,也就是下载一个项目。 |
2.提交与修改
Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。
下表列出了有关创建与提交你的项目的快照的命令:
命令 | 说明 |
git add |
添加文件到暂存区 |
git status |
查看仓库当前的状态,显示有变更的文件。 |
git diff |
比较文件的不同,即暂存区和工作区的差异。 |
git commit -m "" |
提交暂存区到本地仓库,"引用备注" |
git reset --hard commit_id [head^...] |
回退版本,跳转到指定的 commit_id 或者现对于当前节点的某个节点,`^` 表示上一个 |
git rm |
将文件从暂存区和工作区中删除。 |
git mv |
移动或重命名工作区文件。 |
git checkout |
分支切换。 |
git switch |
更清晰地切换分支。 |
git restore |
恢复或撤销文件的更改。 |
3.提交日志
命令 | 说明 |
git log | 查看历史提交记录 |
git reflog |
查看历史命令,便于查看所有历史 commit_id |
4.远程操作
命令 | 说明 |
git remote |
远程仓库操作 |
git fetch |
从远程获取代码库 |
git pull |
下载远程代码并合并 |
git push |
上传远程代码并合并 |
Git 保姆级使用教程-2