Linux环境下git仓库的搭建

news/2024/9/28 15:22:21

(1).参考文献

官网在线教程:https://git-scm.com/book/zh/v2

官方网站:https://git-scm.com/

(2).实验环境

2核2G CentOS7.6.1810

(3).安装git

  1)yum或dnf安装

[root@VM-0-17-centos ~]# dnf -y install git-all

  2)源码安装

  安装依赖包

[root@VM-0-17-centos ~]# dnf -y install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel
#为了添加文档的多种格式(doc、html、info),需要以下附加依赖
[root@VM-0-17-centos ~]# dnf -y install asciidoc xmlto docbook2X

  编译安装

[root@VM-0-17-centos ~]# tar xvf git-2.9.5.tar.xz
[root@VM-0-17-centos ~]# cd git-2.9.5/
[root@VM-0-17-centos git-2.9.5]# make configure
GIT_VERSION = 2.9.5GEN configure
[root@VM-0-17-centos git-2.9.5]# ./configure --prefix=/usr
[root@VM-0-17-centos git-2.9.5]# echo $?    #检查上一个命令是否有异常
0
[root@VM-0-17-centos git-2.9.5]# make all doc info
make[1]: Leaving directory `/root/git-2.9.5/Documentation'
make -C Documentation info
make[1]: Entering directory `/root/git-2.9.5/Documentation'
GEN doc.dep
make[2]: Entering directory `/root/git-2.9.5'
make[2]: `GIT-VERSION-FILE' is up to date.
make[2]: Leaving directory `/root/git-2.9.5'
make[1]: Leaving directory `/root/git-2.9.5/Documentation'
make[1]: Entering directory `/root/git-2.9.5/Documentation'
make[2]: Entering directory `/root/git-2.9.5'
make[2]: `GIT-VERSION-FILE' is up to date.
make[2]: Leaving directory `/root/git-2.9.5'
DB2TEXI user-manual.texi
/bin/sh: line 1: docbook2x-texi: command not found
make[1]: *** [user-manual.texi] Error 127
make[1]: Leaving directory `/root/git-2.9.5/Documentation'
make: *** [info] Error 2

  此时可以看到会报错"docbook2x-texi: command not found",我查了一圈发现,实际上已经安装(docbook2X),这里只需要设置一个软链接

[root@VM-0-17-centos git-2.9.5]# ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi

  之后,重新执行"make all doc info",并继续安装

[root@VM-0-17-centos git-2.9.5]# make all doc info
[root@VM-0-17-centos git-2.9.5]# echo $?
0
[root@VM-0-17-centos git-2.9.5]# make install install-doc install-html install-info
[root@VM-0-17-centos git-2.9.5]# echo $?
0

  以上就安装好了。

(4).基础配置

  配置用户名和邮件地址。这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改。

[root@VM-0-17-centos ~]# git config --global user.name "John Doe"
[root@VM-0-17-centos ~]# git config --global user.email johndoe@example.com

  注意:如果使用了 --global 选项,那么该命令只需要运行一次(除非设置错误),因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。

  配置文本编辑器(这里只记录下命令)。当 Git 需要你输入信息时会调用它, 如果未配置,Git 会使用操作系统默认的文本编辑器。(Linux一般时vi或vim)。

[root@VM-0-17-centos ~]# git config --global core.editor emacs

  查看配置信息,可以使用git config --list查看所有配置信息,或者git config [key]查看某一项配置信息,还可以使用--global、--local、--system来查看指定文件中的配置信息。

[root@VM-0-17-centos ~]# git config --list
user.name=John Doe
user.email=johndoe@example.com
[root@VM-0-17-centos ~]# git config user.name
John Doe

  你可能会看到重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig 与 ~/.gitconfig)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。

  由于 Git 会从多个文件中读取同一配置变量的不同值,因此你可能会在其中看到意料之外的值而不知道为什么。 此时,你可以查询 Git 中该变量的原始值,它会告诉你哪一个配置文件最后设置了该值。

[root@VM-0-17-centos ~]# git config --show-origin user.name
file:/root/.gitconfig	John Doe

(5).扩展

  Git 自带一个 git config 的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置:

    1、 /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果在执行 git config 时带上 --system 选项,那么它就会读写该文件中的配置变量。 (由于它是系统配置文件,因此你需要管理员或超级用户权限来修改它。)

    2、~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 你可以传递 --global 选项让 Git 读写此文件,这会对你系统上 所有 的仓库生效。

    3、当前使用仓库的 Git 目录中的 config 文件(即 .git/config):针对该仓库。 你可以传递 --local 选项让 Git 强制读写此文件,虽然默认情况下用的就是它。 (当然,你需要进入某个 Git 仓库中才能让该选项生效。)

  每一个级别会覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。

  你可以通过以下命令查看所有的配置以及它们所在的文件:

[root@VM-0-17-centos ~]# git config --list --show-origin
file:/root/.gitconfig	user.name=John Doe
file:/root/.gitconfig user.email=johndoe@example.com

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/65793.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

[计算机网络]HTTP请求

HTTP 协议,建立在 TCP 连接基础之上的。HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础,通常由浏览器发起请求,用来获取不同类型的文件,例如 HTML 文件、CSS 文件、JavaScript 文件、图片、视频等。此外,HTTP 也是浏览器使用最广的协议。 HTTP请求发起流程 …

软件工程结对项目

结对项目这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13230这个作业的目标 结对完成四则运算生成器项目成员伍绍雄 学号 3122004753 陈鸿航 学号 3122004732Github…

河道治理漂浮物识别监测系统

河道治理漂浮物识别监测系统通过深度视觉分析技术,河道治理漂浮物识别监测系统实时检测着河道水面是否存在漂浮物、水浮莲以及生活垃圾等。河道治理漂浮物识别监测系统识别到河道水面存在水藻垃圾等漂浮物,系统立即抓拍存档并同步发出报警。河道治理漂浮物识别监测系统可以提…

结队项目

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13230这个作业的目标 实现四则运算程序,掌握结对合作完成项目的技巧成员一 王佳伟3122004880成员二 范圣林3122004735…

AI动作异常行为分析预警系统

AI动作异常行为分析预警系统采用AI神经网络的学习算法,AI动作异常行为分析预警系统实时分析现场人员人体动作操作行为以及着装穿戴情况是否合规进行实时监测,AI动作异常行为分析预警系统通过统计和分析后实现人员违规行为实时监测预警提升现场人员合规操作规范,降低人员违规…

《Python 基础篇》一:初相识

Python 基础语法,以及运算符。Author: ACatSmiling Since: 2024-09-27基础语法 Python 的语法比较简单,采用缩进方式,写出来的代码就像下面的样子: # print absolute value of an integer: a = 100 if a >= 0:print(a) else:print(-a)Python 程序是大小写敏感的,如果写…

VulnHub-SickOs1.1靶机笔记

SickOs1.1靶机笔记 概述 Vulnhub的靶机sickos1.1 主要练习从互联网上搜索信息的能力,还考察了对代理使用,目录爆破的能力,很不错的靶机 靶机地址: 链接: https://pan.baidu.com/s/1JOTvKbfT-IpcgypcxaCEyQ?pwd=ytad 提取码: ytad 一、nmap扫描 1)主机发现 sudo nmap -sn …

MES开发004

写了流程图和数据字段