什么是Git:
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
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使用教程
一,新建仓库(repository)。
可以使用一个已经存在的目录作为Git仓库或者创建一个空目录。
使用当前目录,初始化git init
使用指定目录,git init newrepo
二,添加新文件
git add filename
方法一 git add 添加多个文件,文件之间以空格隔开
方法二 多次git add
方法三 添加指定目录下的文件
config目录下及子目录下所有文件,home目录下的所有.php文件
git config/*
git home/*.php git add -A: 提交所有变化 【A 意思为all 所有】在用之前,先git pull 一下最新代码
git add -u: 提交被修改(modifyed)和被删除(deleted)的文件 不包含新(new)文件 【u 意思为 update】
git add .: 提交被修改(modifyed)和被新建(new)的文件 不包含删除(deleted)
三,提交版本
git commit 提交到版本库
git add 目的是将修改文件由工作区提交到暂存区,可以多次提交
然后commit操作,将文件从暂存区提交到版本库
git commit -m "add new file" 如果您不使用-m,会出现编辑器来让你写自己的注释信息。当我们修改了很多文件,而不想每一个都add,想commit自动来提交本地修改,我们可以使用-a标识。git commit -a -m "Changed some files"
git commit 命令的-a选项可将所有被修改或者已删除的且已经被git管理的文档提交到仓库中。(千万注意,-a不会造成新文件被提交,只能修改。)
四,发布版本
先从服务器克隆一个库并上传
git clone ssh://example.com/~/www/project.git
现在我们修改之后可以进行推送到服务器。
git push ssh://example.com/~/www/project.git
五,取回更新
如果您已经按上面的进行push,下面命令表示,当前分支自动与唯一一个追踪分支进行合并。
git pull
从非默认位置更新到指定的url。git pull http://git.example.com/project.git
六,删除
如何你想从资源库中删除文件,我们使用rm。
git rm file
七,分支与合并
分支在本地完成,速度快。要创建一个新的分支,我们使用branch命令。
git branch test
branch命令不会将我们带入分支,只是创建一个新分支。所以我们使用checkout命令来更改分支。
git checkout master
git merge test
如果想删除分支,使用-d标识。
git branch -d test
图片及文档来自菜鸟-点此链接了解其它