概念
git是开源的底层使用c语言编写的,分布式版本管理控制工具。
作用:
- 代码提交的版本保存,每次写完的代码提交后都会保存下来,随时可以下载使用。
- 同一组内,整合所有人员的代码,进行代码整合。
svn和git的区别:
- svn集中式版本管理控制工具:svn依赖于svn服务器,也就是svn代码仓库。如果不搭建svn服务器或电脑联网无法使用。svn使用起来比git简单,但svn服务器一旦硬盘损坏,svn仓库无法恢复。一般传统企业使用。
- git分布式版本管理控制工具:git不依赖于git私有服务器,也就是git私有仓库,如果不搭建git服务器或电脑不联网,也可以在单机状态下使用git管理代码版本,原因是git有一个本地仓库,就在自己电脑硬盘上。
git比较复杂,但功能比svn强大,是完全分布式的,如果私有服务器坏了,那么代码版本也可以恢复,因为每个人电脑上有一份和git私有服务器中一模一样的版本库,可以随时恢复使用。
git适合互联网公司使用。
git操作流程
git小乌龟工具基本操作
一、安装好git和小乌龟工具
二、创建本地仓库
新建文件夹,右键
发现.git隐藏文件,创建完成
三、将文件添加到暂存区
创建测试文件
右键使用小乌龟工具的add命令
点击ok,将文件添加到暂存区
四、将暂存区文件添加到本地仓库
点击commit提交,
写好注释,提交
完成
五、或者直接一步提交到本地仓库
六、比较文件差异
右键更新完成的文件
七、显示提交的日志信息,并还原最初版本
八、删除
上面那个,删除本地所有该文件。
下面那个,删除本地所有该文件,除了现在存在的那个
提交项目时忽略垃圾文件
一、复制项目到本地仓库
二、提交项目到本地仓库。
发现有很多的垃圾文件!!
注意:此步需要选择文件,必须忽略垃圾文件(如.class文件、.project文件等),只提交跟项目相关的文件
1、必须添加忽略文件
进入项目,右键.idea文件
此时,会在项目目录中生成忽略语法文件
2、再将out目录和.iml文件也添加到忽略目录中。
如果是maven项目,lib目录也需要被忽略
3、此时就可以进行提交,发现垃圾文件都没有了
忽略文件提不提交都行
搭建git私有服务器
使用虚拟机搭建
一、创建centos7虚拟机,复制git服务器到虚拟机中
二、安装git服务环境准备
yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc
三、解压缩git服务器
tar -zxvf git-2.5.0.tar.gz -C ./
四、编译
如果编译错误
yum install perl-ExtUtils-MakeMaker package.
五、安装
make prefix=/usr/local install
六、添加用户
useradd 用户名
passwd 用户名
//输入密码
七、创建仓库
在git账户下创建仓库,如果有/home/git
目录,则不用再创建
八、切换用户
root用户切到git账户不用输密码,普通账户切到root账户需要输入密码,默认为linux的root用户的密码
su 用户名
八、创建版本库
一个项目一个仓库
git init --bare xx.git
推送本地仓库代码到git服务器
配置ssh协议来进行推送
一、进入本地仓库,右键
输入
ssh-keygen -t rsa
二、查看公钥和私钥的存储位置
上面为私钥,下面为公钥
三、将公钥上传到git服务器
四、进入仓库,创建.ssh隐藏目录,将公钥放入该目录中
五、修改公钥文件名
mv id_rsa.pub authorized_keys
六、将本地仓库内容保存到git服务器
1、进入小乌龟设置,配置ssh客户端地址
二、配置远端信息
ssh://git@192.168.200.128:22/home/git/e3.git
三、输入,密码为git
四、进入本地仓库,点击push
五、push成功
将git服务器仓库克隆到本地
一、右键
二、
分支和解决冲突
一、创建分支
创建完成后,发现并没有切换到dev分支,因为此时指针依旧指向master主干
二、切换到分支
三、合并分支到主干
以当前代码为主,将其他分支合并到当前分支上。所以需要先切换到主干。
发现合并失败
四、解决冲突
发现两个分支的代码有冲突
解决冲突
完成
提交。。。
idea下使用git
一、创建新工程,点击settings
进入git进行配置,配置完成点击test测试
二、克隆项目
克隆完成
三、修改代码,提交
commit是直接提交到本地仓库,add是存到暂存区,然后可以commit提交到本地仓库
四、推送push
五、拉取代码