Git本地仓库的搭建及使用

article/2025/6/21 21:41:07

前言

1.什么是git?

  • 开源的最先进的分布式版本控制系统,没有之一
  • 用以高效、高速的处理从很小到非常大的项目版本管理。

2.什么是版本控制系统?

  • 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统

3.什么是分布式版本控制系统?

  • 分布式版本控制系统(Distributed Version Control System,简称 DVCS), 在这类系统中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。 这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。 因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。

4.Git的功能特性

  1. 从服务器上克隆数据库(包括代码和版本信息)到单机上
  2. 在自己的机器上创建分支,修改代码
  3. 在单机上自己创建的分支上提交代码
  4. 在单机上合并分支
  5. 新建一个分支,把服务器上最新版的代码fetch下来,然后跟自己的主分支合并
  6. 生成补丁(patch),把自己的补丁发送给主开发者
  7. 看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过
  8. 一般开发者之间解决冲突的方法,开发者之间可以使用pull命令解决冲突,解决完冲突之后再向主开发者提交补丁

一、Git本地仓库的搭建与使用

1.安装git

[root@server1 ~]# yum install -y git

2.创建我们的本地仓库,并且初始化

[root@server1 ~]# mkdir demo	#这里创建的版本库的名字为demo
[root@server1 ~]# cd demo/
[root@server1 demo]# ls -a
.  ..
[root@server1 demo]# git init	#进行初始化,需要在版本库目录中(这里的版本库目录为demo
Initialized empty Git repository in /root/demo/.git/
[root@server1 demo]# l.
.  ..  .git
[root@server1 demo]# ls .git/
branches  config  description  HEAD  hooks  info  objects  refs

在这里插入图片描述
可以发现当前目录下多了一个.git的目录,这个目录是Git来管理版本库的,一般不要手动修改这个.git目录里面的文件。

3.添加用户信息

初始化完后,接下来就要设置用户名和邮件地址,每次Git提交都会附带上这些信息,其实这些信息可以说时仓库所有者的标签,也可以说是联系人信息

[root@server1 demo]# git config --global user.name peng
[root@server1 demo]# git config --global user.email peng.redhat.com
[root@server1 demo]# 
[root@server1 demo]# cat ~/.gitconfig 
[user]name = pengemail = peng.redhat.com

在这里插入图片描述

4.创建文件,查看仓库文件状态

[root@server1 demo]# touch file1
[root@server1 demo]# echo redhat > file1 
[root@server1 demo]# git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#	file1
nothing added to commit but untracked files present (use "git add" to track)
[root@server1 demo]# git status -s
?? file1		##新添加的未跟踪的文件前面有??标志

在这里插入图片描述

5.添加文件,也就是把文件放到暂存区

[root@server1 demo]# git add file1
[root@server1 demo]# git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#	new file:   file1
#
[root@server1 demo]# git status -s
A  file1		 ##A表示已经添加到暂存区了

在这里插入图片描述
6.提交更改,实际上就是把暂存区的所有内容提交到当前分支

root@server1 demo]# git commit -m "add file1"
[master (root-commit) 59ef986] add file11 file changed, 1 insertion(+)create mode 100644 file1
[root@server1 demo]# 
[root@server1 demo]# git status -s					##提交完后我们就会发现状态栏就没有文件了
[root@server1 demo]# 

在这里插入图片描述
7.git status的状态显示分类

  • 新添加的未跟踪文件前面有 ?? 标记,
  • 新添加到暂存区中的文件前面有 A 标记,
  • 修改过的文件前面有 M 标记。
  • 出现在右边的 M 表示该文件被修改了但是还没放入暂存区,
  • 出现在靠左边的 M 表示该文件被修改了并放入了暂存区。
  • MM表示工作区被修改并提交到暂存区后又在工作区中被修改了,所以在暂存区和工作区都有该文件被修改了的记录

在这里插入图片描述
8.忽略文件

一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件模式。

在这里插入图片描述
9.版本回退

像这样,不断对文件进行修改,然后不断提交修改到版本库里,Git也是一样,每当你觉得文件修改到一定程度的时候,就可以“保存一个快照”,这个快照在Git中被称为commit。一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作,而不是把几个月的工作成果全部丢失。

(1) git checkout – file

  • 以丢弃工作区的修改,就是让这个文件回到最近一次git commit或git add时的状态
[root@server1 demo]# echo pengpeng >> file1 
[root@server1 demo]# cat file1 
redhat
snow
hello
pengpeng
[root@server1 demo]# git checkout -- file1
[root@server1 demo]# cat file1 
redhat
snow
hello
[root@server1 demo]# git status
# On branch master
nothing to commit, working directory clean

在这里插入图片描述
(2) git log命令显示从最近到最远的提交日志
在这里插入图片描述
在这里插入图片描述
(3)git log --pretty=oneline查看简略日志信息

在这里插入图片描述
(4) git reflog查看历史记录
在这里插入图片描述
(5) git reset --hard HEAD^

  • 上一个提交状态就是HEAD,上上一个提交状态就是HEAD^
    在这里插入图片描述
    (6) git reset --hard … 回退到指定状态

    在这里插入图片描述

10.删除后恢复

  • 删除后没有提交,直接:git checkout – file即可
    在这里插入图片描述

  • 删除且提交后: git reset --hard 指定状态
    在这里插入图片描述


http://chatgpt.dhexx.cn/article/jjU6FAEn.shtml

相关文章

git 本地仓库存储位置 / github 本地仓库存储位置 / gitee 本地仓库存储位置

通过在菜鸟教程上学习&#xff0c;了解到 git 关于工作区、缓存区、版本库、本地仓库、远程仓库等概念&#xff0c;即&#xff1a; 工作区&#xff1a;指本地仓库中&#xff0c;除了 .git 目录以外的所有文件和目录&#xff1b;缓存区&#xff1a;.git 目录下的 index 文件&am…

Git 本地仓库(Repository)详解

大纲&#xff1a; 一、前言 二、概述 三、在Windows上安装Git 四、创建本地仓库 五、本地仓库管理详解 六、总结 注&#xff0c;测试机 CentOS 5.5 x86_64&#xff0c;Git 服务器版本&#xff1a;git version 1.8.2.1&#xff0c;客户端版本&#xff1a;git version 1.9.2.msys…

Git的基本使用(本地仓库)

一、安装Git 可以使用以下地址下载Git&#xff0c;然后默认选项安装即可 Git for Windowshttps://git-for-windows.github.io 安装完成后&#xff0c;在开始菜单找到“Git”->"GIt BAsh" ,说明安装成功 下载完成后&#xff0c;打开进行安装&#xff08;按照下图…

Python及第三方库pillow\numpy等的安装教程

1、python安装&#xff1a;https://www.cnblogs.com/lvtaohome/p/11121377.html 2、安装第三方库&#xff1a; python成功安装之后&#xff1a; 方法一&#xff1a;管理员下运行windos命令&#xff0c;然后输入pip install 要安装的第三方库名 也有可能会下载到一半出错&am…

numpy简单快速安装教程

numpy安装教程 默认python版本较新版本&#xff08;有pip功能&#xff09; step1&#xff1a; numpy下载地址 step2&#xff1a; 我将下载好的numpy放到了D:\python\Scripts中 然后cmd打开 输入 python -m pip install numpy 如图&#xff1a; 安装后有个Warning需要你进行…

NumPy window 安装教程 多图 简单易懂

前言: NumPy(Numerical Python) 是 Python 语言的一个扩展程序库&#xff0c;支持大量的维度数组与矩阵运算&#xff0c;此外也针对数组运算提供大量的数学函数库。 NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发&#xff0c;2005 年&#xff0c;Travis O…

【冰糖Python】PyTorch安装教程(PyCharm IDE)

当在PyCharm中新建项目后&#xff0c;想要在虚拟环境中安装PyTorch 在Setting中安装总是报错&#xff0c;安装失败 则采用官方建议的命令方式安装即可&#xff0c;点此跳转 可对PyTorch版本、系统版本、CUDA版本进行选择&#xff1a; 选择对应配置后&#xff0c;下方生成对应…

学习笔记——python最详细安装新手教程

目录 1&#xff0c;win10不自带python 2&#xff0c;先去Python官网&#xff08;https://www.python.org/&#xff09;上下载你自己想要的版本 2.1&#xff0c;python官网有几个下载文件&#xff0c;有什么区别&#xff1f; 3&#xff0c;双击安装程序&#xff0c;进入下面的…

Python零基础入门教程:Windows/Mac 安装、使用 Python 环境 +jupyter notebook

一、知识点概要 1&#xff09;搞定Python基础环境安装 2&#xff09;安装jupyter notebook&#xff0c;最便捷的Python编辑器 3&#xff09;运营常用Python包介绍和安装 二、开始动手动脑 2.1 搞定Python基础环境安装 2.1.1 下载Python安装包 Mac是自带Python2.7的&#x…

pyhanlp安装教程

小编在安装pyhanlp过程中,费了很多时间,也走了许多弯路。至此,记录一下,以免后面再次安装时浪费时间。以下是安装步骤。 1.安装JDK,版本为:jdk-8u271-windows-x64,安装完之后设置环境变量。环境变量在系统变量下设置,分别添加如下变量: 1.1 JAVA_HOME C:\Program Fil…

lammps教程:moltemplate安装教程

大家好&#xff0c;我是小马老师。 本文介绍ubuntu系统下moltemplate的安装方法。 &#xff08;1&#xff09;下载moltemplate软件 下载moltemplate的方法有多种&#xff0c;如git&#xff1a; git clone https://github.com/jewettaij/moltemplate moltemplate 可能部分电脑…

教程:MAC系统Linux服务器下用Anaconda安装Pytorch

目录 连接服务器配置Conda安装Anaconda方法一 手动下载方法二 命令行下载 添加环境变量 安装Pytorch测试 连接服务器 打开mac系统的terminal ssh usernameservername #连接服务器mkdir anaconda #为即将下载的安装包新建一个文件夹配置Conda 安装Anaconda 方法一 手动下载 …

原来安装Python这么简单,全部教程

Python安装 1.浏览器打开网址:www.python.org 2.根据电脑系统选择下载 3.确定电脑系统属性&#xff0c;此处我们以win10的64位操作系统为例 4.安装python 3.6.3 双击下载的安装包 python-3.6.3.exe 注意要勾选&#xff1a;Add Python 3.6 to PATH 点击 Customize installa…

【python】新手安装教程(巨详细)!!!

Python由荷兰数学和计算机科学研究学会的吉多范罗苏姆于1990年代初设计&#xff0c;作为一门叫做ABC语言的替代品。 [1] Python提供了高效的高级数据结构&#xff0c;还能简单有效地面向对象编程。Python语法和动态类型&#xff0c;以及解释型语言的本质&#xff0c;使它成为多…

在pycharm里安装pytorch安装教程

pytorch安装教程 1、换源2、新建环境3、打开pycharm配置pytorch环境4、在pycharm的Terminal安装其他包 1、换源 ①运行cmd 默认情况下是在用户目录的&#xff0c;直接在该命令行下键入 .condarc&#xff0c;就会自动打开condarc文件。 ②输入以下内容 channels: -https://mir…

Python怎么安装/如何安装Python/Python新手安装教程/新手Python编辑器推荐/IDLE、Sublime Text3、Notepad++、pycharm、anaconda下载安装

本来在Word文档里写好的&#xff0c;在这里一复制就这样了&#xff0c;懒得改&#xff0c;需要word文档的评论吧。 Python有以下几个著名编译器&#xff1a; ①Python官方自带的IDLE (最简单&#xff0c;上手容易&#xff0c;但作用有限&#xff0c;优先下载)②Sublime Text…

超详细的Python下载和安装教程

进入Python的官方下载页面 http://www.python.org/download/ 出现很多版本的&#xff0c;我们选择最新的版本3.10.0 下载完成后点击运行&#xff0c;会出现安装界面 记得勾上Add Python 3.10 to PATH 安装过程 出现这个就安装成功了 运行Python 安装成功后&#xff0c;打…

Python,Jupyter Notebook,IPython快速安装教程

###Python,IPython,Jupyter Notebook快速安装教程 ###下一篇&#xff1a;IPython、Notebook、qtconsole使用教程 ###下一篇Python数据科学安装Numby,pandas,scipy,matpotlib等&#xff08;IPython安装pandas&#xff09; 最近深入Python的数据分析方面&#xff0c;为了进一步优…

下载安装pycharm+anaconda+pytorch具详细小白教程

安装流程&#xff1a; 一、确认电脑有无英伟达显卡&#xff1b; 首先确定自己电脑上是否安装有NVIDIA显卡&#xff08;GPU&#xff09;&#xff0c;如果有安装GPU版本&#xff0c;如果没有&#xff0c;安装CPU版本。 找到 任务管理器&#xff0c;选择 “性能&#xff0c;看有没…

Python以及Pychram安装教程(2022)

Python的安装 一、在浏览器上输入python.org&#xff0c;回车 选择自己想要下载的python版本。 我这里选的是python3.10.2&#xff0c;以为我的电脑是64位的&#xff0c;所以我就点了 Download Windows installer (64-bit) 注意&#xff1a;下载时要看电脑的位数 右键 此…