• 6---Linux下版本控制器Git的知识点


    一、Linux之父与Git的故事:

    • Linux之父叫做“Linus Torvalds”,我们简称为雷纳斯。
    • Linux是开源项目,所以在Linux的早期开发中,许多世界各地的能力各异的程序员都参与到Linux的项目开发中。那时,雷纳斯每天都会收到许许多多邮件,里面是每个程序员自己的代码,雷纳斯要审核其中的代码并且不断添加到Linux的源码中。
    • 这种工作使得雷纳斯不断压缩自己的私人时间,终于他受不了了。于是他想要有一款分布式版本控制系统,可以让开发者在本地创建分支和进行合并操作,无需每次都与中央服务器通信。也能够让开发者可以独立工作并在本地仓库中进行提交,然后再与其他开发者同步更改
    • 于是他就找到了BitKeeper,但是BitKeeper是商业软件,需要付费使用。违背了雷纳斯对开源原则的信仰,并且使用收费的版本控制软件可能会排斥一些开发者,限制了他们参与项目的能力。于是雷纳斯和其团队决定放弃使用BitKeeper。
    • BitKeeper的老板听闻后,决定免费向Linux社区提供BitKeeper的使用权限。后来由于社区内部的一些矛盾和冲突(Linux内核开发社区中的一些成员对于依赖BitKeeper这样一个闭源的商业软件一直存在不满。他们担心使用一个闭源工具来开发开源软件会带来潜在的问题,比如数据锁定和对商业公司的依赖。于是Andrew Tridgell,知名的开源开发者(Samba项目的主要开发者之一),尝试逆向工程BitKeeper的协议以便创建一个开源的替代工具。这一举动被BitMover公司视为威胁,认为这可能违反了他们的使用协议。),最终导致BitMover公司决定收回Linux社区的免费使用权限。
    • BitMover公司撤回Linux社区免费使用BitKeeper的权限,对Linux内核的开发产生了重大影响,因为开发者们突然失去了他们依赖的版本控制工具。面对这一情况,雷纳斯迅速采取行动。决定自己开发一个新的版本控制系统。并在短短的几个星期内就完成了基本功能。且进行了开源,于是乎Git就诞生了。
    • 由于Git是开源软件,内核开发者迅速采用了它,并对其进行了改进和扩展。
    • Git不仅解决了Linux内核开发的版本控制问题,还迅速成为全球最流行的版本控制系统。现在被广泛应用于各种开源和商业项目,许多开发团队使用它来管理代码库。

    二、Git操作:

    2.1Git创建仓库:

    • 创建时的步骤:

            

    • 创建完成后的样子:

            

    2.2删除仓库:

    • 点击管理->删除仓库

            

    • 确认删除

            

    2.3创建本地仓库:

    • 复制远端仓库链接:

            

    • 查看当前Linux是否安装了git:

            

    git --version

    • 如果没有显示版本,说明没有安装,使用yum安装git。

            

    sudo yum install -y git

    • 本地先创建一个目录,然后输入指定命令,建立两个仓库之间的链接:

            

    git clone + 远端仓库链接

    • 配置完成:

            

    2.4提交本地代码到远端仓库:

    • 将修改内容放到暂存区stage:
    git add .
    • 将暂存区内容合并到版本库的master中:

            完成该步骤之后,已经将本地代码的变化添加到了本地的.git仓库中。.git时隐藏目录,是实际上的本地仓库。

    git commit -m “本次提交的核心信息,不要乱写”
    • 同步本地仓库的改动到远端服务器上:需要填入用户名密码.同步成功后,刷新 Github 页面就能看到代码改动了.
    git push

    2.5 查看提交日志:

    git log

    2.6同步远端仓库到本地:

    • 如果有人克隆我的开源仓库到本地,当我更新了自己的本地仓库并且同步了远程仓库。其他人想要在克隆的本地仓库看到我的更新,就需要以下指令先更新自己的本地仓库。
    git pull

    2.7多人协同,如何判断其他人是否有过提交?

    • 正常提交,如果push成功,说明远端仓库没有被修改过。
    • 如果远端仓库有别人更新,这次push就不会成功,就需要自己先git pull将远端仓库和自己本地仓库同步,然后再push。

    2.8查看当前仓库是否完全提交:

    • 使用指令git status查看当前仓库是否有文件未被提交。
    • 如果有文件未被提交,会说明哪个文件没有被提交。然后使用commit->push两个命令提交即可。
    git status

    三、首次git,需要的配置解析:

    • 首次向git提交代码,需要提交邮箱和用户名:

            

    • 只需要将以上两条代码分别复制,然后将双引号中的内容更改为自己的邮箱和用户名即可。
    • 之后的提交都可以正常提交了。

    四、.gitignore文件解析:

    • 可以理解为一个文件过滤器,过滤掉不想上传到远端仓库的文件。
    • 向.gitignore文件中添加文件后缀,所有在该文件中声明的后缀,在上传文件到远端仓库时,都会被过滤掉。

  • 相关阅读:
    C++栈、队列、优先级队列模拟+仿函数
    【Elasticsearch】结合Postman/ApiPost 快速入门
    CentOS脚本快速部署K8S
    DAP+ESB预置样例组件配置心得
    数据治理资料整理合集
    【Leetcode每日一题 1726】「组合|哈希表」同积元组
    Elasticsearch:ES|QL 中的数据丰富
    几年了,作为一个码农终于把MySQL日记看懂了
    AI文本创作在百度App发文的实践
    Unity使用新输入系统InputSystem制作飞机大战Demo
  • 原文地址:https://blog.csdn.net/weixin_63716012/article/details/138899173