一、Git简介
官网:Git git是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布。最初目的是为更好地管理Linux内核开发而设计。 Git 官方中文手册 Git - Book
二、Git历史
自2002年开始,林纳斯·托瓦兹决定使用BitKeeper作为Linux内核主要的版本控制系统用以维护代码。因为BitKeeper为专有软件,这个决定在社区中长期遭受质疑。在Linux社区中,特别是理查德·斯托曼与自由软件基金会的成员,主张应该使用开放源代码的软件来作为Linux核心的版本控制系统。林纳斯·托瓦兹曾考虑过采用现成软件作为版本控制系统(例如Monotone),但这些软件都存在一些问题,特别是性能不佳。现成的方案,如CVS的架构,受到林纳斯·托瓦兹的批评。 2005年,安德鲁·垂鸠写了一个简单程序,可以连接BitKeeper的存储库,BitKeeper著作权拥有者拉里·麦沃伊认为安德鲁·垂鸠对BitKeeper内部使用的协议进行逆向工程,决定收回无偿使用BitKeeper的授权。Linux内核开发团队与BitMover公司进行蹉商,但无法解决他们之间的歧见。林纳斯·托瓦兹决定自行开发版本控制系统替代BitKeeper,以十天的时间,编写出第一个git版本
三、安装git
1.准备环境
关闭防火墙和selinux
2.Yum安装Git
1)centos 自带git
直接yum安装即可
yum install git -y
2)也可以选择源码安装
编译安装可以安装较新版本的git
Git下载地址: Releases · git/git · GitHub
选择对应的git版本tar包下载并解压
tar -zxf git-2.0.0.tar.gz
安装依赖关系
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel autoconf gcc perl-ExtUtils-MakeMaker
编译安装
cd git-2.0.0
./configure --prefix=/usr/local/git # 没有文件可以略过
make
make install
四、初次运行 Git 前的配置
命令集
git config --global user.name "username" #配置git使用用户
git config --global user.email "[email protected]" #配置git使用邮箱
git config --global color.ui true #语法高亮
git config --list # 查看全局配置
实例:
我们现在准备两台服务器同时安装git并建立初次运行 Git 前的配置为后面得操作做准备
git:
git2:
五、Git命令常规操作
常用命令说明
命令****命令说明#add添加文件内容至索引bisect通过二分查找定位引入 bug 的变更#branch列出、创建或删除分支#checkout检出一个分支或路径到工作区#clone克隆一个版本库到一个新目录#commit记录变更到版本库#diff显示提交之间、提交和工作区之间等的差异fetch从另外一个版本库下载对象和引用grep输出和模式匹配的行#init创建一个空的#log显示提交日志#merge合并两个或更多开发历史#mv移动或重命名一个文件、目录或符号链接#pull获取并合并另外的版本库或一个本地分支#push更新远程引用和相关的对象rebase本地提交转移至更新后的上游分支中#reset重置当前HEAD到指定状态#rm从工作区和索引中删除文件show显示各种类型的对象#status显示工作区状态#tag创建、列出、删除或校验一个GPG签名的 tag 对象
六、获取 Git 仓库(初始化仓库)
创建裸库
创建git用户
useradd git
设置密码
passwd git
创建仓库目录库可自定义
mkdir /git-root/
进入仓库目录
cd /git-root/
git init --bare .git结尾的库名
修改属主属组
chown -R git:git shell.git
实例 :
git2创建裸库
创建本地库
实例:
git服务器操作
建立免密互信
ssh-keygen
ssh-copy-id [email protected]
克隆git2刚才创建的裸库
git clone [email protected]:/git-root/ztn.git
进入克隆过来的库创建一个库文件
cd ztn
vim test1.sh
#内容可以自定义:
添加文件内容至索引
git add test1.sh
记录到版本库中
git commit -m '第一次记录' #-m 指定标签
更新到远程仓库
git push origin master
现在我们回到git2服务器上查看刚才创建的库文件
cd /git-root/ztn.git/objects/
tree
显示文件内容
git cat-file -p 591aabe36
显示文件类型
git cat-file -t 591aabe36
显示文件大小
git cat-file -s 591aabe36
希望能够帮助到大家!!!
版权归原作者 藻头男 所有, 如有侵权,请联系我们删除。