Git:分布式版本控制系统,没有“中央服务器”,每个人的电脑上都是一个完整的版本库。
SVN:集中式版本控制系统,版本库是集中存放在中央服务器的,大家都是围绕中央服务器展开工作的。
###git安装
Windows方式:下载安装,https://git-scm.com/download/win,按默认提示安装完成即可打开Git->Git Bash
Linux上安装Git:sudo apt-get install git
###git初始化
在使用git管理代码之前,先要对git进行初始化配置。
$ git config --global user.name "xdsxhdyy"
$ git config --global user.email "xdsxhdyy@126.com"
设置你的名字和email,这些就是你在提交commit时的签名
$ cat ~/.gitconfig
这时可在家目录下看到一个叫.gitconfig 的文件。
###git仓库
-
Git远程仓库:从已有的Git仓库中clone
Git URL可能以ssh://, http(s)?/, git://. 有些仓库可以通过不只一种协议来访问。
$ git clone https://github.com/xdsxhdyy/hadoop_mapreduce.git
将github上对应的项目复制到本地 -
新建一个git仓库
进入到代码目录,创建并初始化Git仓库:
$ git init
会有一个名叫.git 的目录被创建
###git的基本流程如下:
git add;添加工作区(Workspace)新创建或修改的文件到本地的缓存区(Index)
如果是首次上传项目:git remote add origin https://github.com/xdsxhdyy/hadoop_mapreduce.git
git commit;提交到本地仓库(Repository)
$ git commit -m "add 3 files"; -m添加本次提交的注释
git push origin master 将本地仓库同步到远端仓库(Remote)
###git常用命令
git status;查看当前git仓库的状态
git diff --cached;看缓存区中哪些文件被修改了,查看缓存区内与上次提交之间的差别,使用q退出
git branch testl;创建一个新的叫 testl 的分支
git branch;查看当前的分支列表
git checkout 分支名; 可以切换到其他分支
git merge命令来合并分支到主线分支master
$ git merge -m 'merge test1 branch' test1;合并test1分支到主线分支master
$ git branch -d test1; 删除合并完成后的分支
git log命令可以显示所有的提交(commit)日志
$ git log --stat; 打印详细的提交记录
###总结
git config:配置相关信息
git clone:复制仓库
git init:初始化仓库
git add:添加更新内容到索引中
git diff:比较内容
git status:获取当前项目状况
git commit:提交
git branch:分支相关
git checkout:切换分支
git merge:合并分支
git reset:恢复版本
git log:查看日志