Linux—— 版本控制器Git

目录

一、版本控制器

[二、git 简史](#二、git 简史)

三、git安装和使用

1、判断是否安装了git

2、安装git

3、创建仓库

[4、git clone 刚刚复制的地址](#4、git clone 刚刚复制的地址)

5、提交三板斧

[(1)git add](#(1)git add)

[(2)git commit](#(2)git commit)

[(3)git push](#(3)git push)

[(4) git log](#(4) git log)

四、如何进行多人协作

.gitnore


一、版本控制器

为了能够方便我们管理这些不同版本文件,便有了版本控制器。所谓版本控制器,就是可以让你看到文件的历史,以及它的发展过程,通俗来说就是记录工程的每一改动和版本迭代的一个管理系统,也可以让多人协同作业,目前最流行的就是Git

二、git 简史

Git 是一个分布式版本控制系统,最初由 Linux 项目的创始人 Linus Torvalds 于2005年创建。Linus Torvalds 创建 Git 的初衷是为了更好地管理 Linux 内核的开发。在过去的十多年里,Git 已经成为最流行和广泛使用的版本控制系统之一,被许多开发人员和组织用于管理他们的代码库。Git 的设计目标是速度、数据完整性和支持分布式、非线性工作流程。Git 之所以如此受欢迎,是因为它简单易用,同时具有强大的功能和灵活性,使得开发人员可以高效地协作和管理项目。

三、git安装和使用

1、判断是否安装了git

--version

出现如上图所示则安装了,如果没有就要安装

2、安装git

yum install git

注册Github 创建项目

注册账号

跟平常注册一样

3、创建仓库

复制上面的链接

下载项目到本地

4、git clone 刚刚复制的地址

将远端目录拷贝到本地

下载后我们会发现文件中多了一个my_-linux

打开问my_-linux.1后我们发现他里面的内容就是我们在Github上的

对比发现多出来了一个.git叫做本地仓库,我们需要通过他将代码传到gite ,将我们的代码进行托管

5、提交三板斧

(1)git add

将代码放到刚才下载好的目录中(将文件托管到.git,其实是将本地目录中的文件提交到.git的一个暂存区,如果我们提交失败或者不想提交了可以清空他)

git add 文件名

(2)git commit

将提交改动的信息到本地目录,将暂存区的文件提交到本地

git commit - m "xxx" (xxxx表示你改动的信息或者备注)

提交的时候应该注明提交日志,描述改动的详细内容

当我们第一次commit 的时候我们会弹出如下的信息,我们只需要将红色的部分拷贝下来,""中写上我们的email(注册时候写的email) 和 注册时候的名字

通过上面的两步我们才将代码提交到.git(本地仓库中)经过上面两个我们已经把我们的代码进行了本地化的提交

(3)git push

同步到远端服务器上(将本地和远端进行同步)

(4) git log

查看我们每次commit的信息(所以commit紧跟着的信息不能乱写)

四、如何进行多人协作

多人协作一般就是多人重复上述的步骤 但是值得注意的是如果希望提交到远端成功,必须要满足如下图的关系

但一个人提交自己的代码文件到远端之后,这时候远端和其他人本地的关系就是交集,当其他人将自己写好的代码push到远端的时候就会报错,所以我们需要在add之前将我们的本地和远端同步

git pull (多人协同的时候最好都做一下)

.gitnore

忽略在.gitignore 文件中包含的后缀(不会将他们提交到远端,过滤文件,防止污染文件)

git add git commit究竟在干什么

git add git commit ->本质上提交的是你的修改操作(进行对比,保存文件修改记录到仓库),不是将文件整体进行拷贝提交。

相关推荐
Crazy________1 小时前
28Rsync免密传输与定时备份
linux·运维·服务器
阿巴~阿巴~2 小时前
信号产生机制全解析:从硬件异常到软件触发的深度探索
linux·运维·服务器
坐望云起2 小时前
Hyper-V + Centos stream 9 搭建K8s集群(一)
linux·kubernetes·centos
sky北城4 小时前
linux基本系统服务——DNS服务
linux·运维·服务器
Adorable老犀牛4 小时前
DockerFile文件执行docker bulid自动构建镜像
运维·docker·容器
IvorySQL5 小时前
PGSQL运维优化:提升vacuum执行时间观测能力
运维·postgresql·开源·开源数据库·ivorysql
心一信息7 小时前
如何在Ubuntu上部署excalidraw
linux·运维·ubuntu
CV资深专家7 小时前
常用git命令
git
人生匆匆8 小时前
linux ext4缩容home,扩容根目录
linux·运维·服务器
鱼骨不是鱼翅8 小时前
自动化框架pytest
运维·自动化·pytest