0


分布式版本控制系统 Git

一、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

希望能够帮助到大家!!!

标签: git 分布式 运维

本文转载自: https://blog.csdn.net/yz2322944912/article/details/136219434
版权归原作者 藻头男 所有, 如有侵权,请联系我们删除。

“分布式版本控制系统 Git”的评论:

还没有评论