1.Git是用来干嘛的

这篇具有很好参考价值的文章主要介绍了1.Git是用来干嘛的。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文章学习于【GeekHour】一小时Git教程,来自bilibili

Git就是一个文件管理系统,这样说吧,当多个人同时在操作一个文件的同时,很容易造成紊乱,git就是保证文件不紊乱产生的

包括集中式管理系统和分布式管理系统

1.Git是用来干嘛的,1小时学会git,git

听懂了,集中式管理系统就是从中央服务器上下载最新的版本文件,修改文件之后将 文件上传到中央管理系统,然后中央管理系统得到你更改之后的文件

缺点:中央服务器出现问题所有人都无法工作

1.Git是用来干嘛的,1小时学会git,git

都有一个完整的版本库,不需要网络就可以直接在本地修改

当需要把文件分享给其他人的时候,只需要把仓库互相同步一下就行了

git就是分布式的

如何新建一个管理库

将仓库理解为一个目录,这个目录下的所有文件的修改,删除,git都可以追踪到,这样我们就可以恢复到之前的版本

git init:在本地上面创建一个文件夹

git clone:直接从github上克隆一个项目,会生成一个文件夹

windows系统下bash的操作

1.Git是用来干嘛的,1小时学会git,git

ls -a是用来检测git文件是否存在,是仓库是否创建成功的标志

1.Git是用来干嘛的,1小时学会git,git

可以通过以上命令来观察git文件的内容,但是不要轻易修改

1.Git是用来干嘛的,1小时学会git,git

现在我们返回到之前的文件夹,然后我们通过 \rm -rf .git 将git文件删除掉,然后我们在当前文件夹 下面重新创建了一个my-repo的文件夹,并且以这个为仓库继续执行(my-repo中有我们的.git)

之后我们进入我们的my-repo文件夹并且检索文件中是否含有.git

Git的工作区域和文件状态

工作区:就是我们电脑上的目录 .git所在的目录

暂存区:用于保存即将提交到github上的修改内容 .git/index所在

本地仓库:通过git init 创建的那个仓库

1.Git是用来干嘛的,1小时学会git,git

当我们的代码文件到达一定阶段之后,我们需要保存在本地仓库

1.Git是用来干嘛的,1小时学会git,git

如果我们每次修改一次文件就提交的话,会比较麻烦,所以我们先将我们将要提交的文件保存在暂存区中,然后某一阶段结束之后,再统一提交到本地仓库中

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

通过以上几个命令创建一个文件(在git文件所在的文件夹中打开git bash)

1.Git是用来干嘛的,1小时学会git,git

现在我们的file1.txt目前在工作区,现在我们将他载入到暂存区

1.Git是用来干嘛的,1小时学会git,git

然后我们的文件file变成了绿色,表示现在这个文件已经被添加到了暂存区,等待被提交

看绿色文件上方的文字

git rm 表示我们可以通过这个命令来取消暂存

git commit只会提交暂存区中的文件,而不会提交工作区的其他文件

1.Git是用来干嘛的,1小时学会git,git

接着我们提交file1这个文件

1.Git是用来干嘛的,1小时学会git,git

之后我们添加了几个文件,这些文件用来演示git add多个文件的操作

值得注意的是ls命令会把所有工作区中(包括已提交)的文件显示出来

只有看git status才知道有没有放到暂存区,或者已经提交了

1.Git是用来干嘛的,1小时学会git,git

我们接着使用git add *.txt将文件提交到本地仓库中

txt文件全部提交

1.Git是用来干嘛的,1小时学会git,git

使用git . 可以该文件夹下的所有文件都提交到暂存区中

这里的 . 表示当前目录

如果我们使用git commit就会进入到交互页面,交互页面是一个vs的界面

使用方向键 来移动光标

使用i键进入编辑模式

输入提交信息

1.Git是用来干嘛的,1小时学会git,git

之后esc键回到命令模式

输入:wq命令保存退出

1.Git是用来干嘛的,1小时学会git,git

可以看到所有文件都已经提交完成了

1.Git是用来干嘛的,1小时学会git,git

使用git log 来查看提交记录,可以看到我们的两次提交

每次提交都有一个提交id

以及提交的作者和邮箱id

还有日期

1.Git是用来干嘛的,1小时学会git,git

可以使用git log --oneline 来展示简介的提交记录

让我们总结一下:

  • git status 查看仓库的状态

  • git add 提交到暂存区

  • git commit 提交 ——只提交暂存区的内容,不会提交工作区

  • git log 查看仓库提交历史记录——可以使用 log -- oneline来查看简介的提交记录

git reset

reset命令用于提交版本,可以用于回到之前的某个提交的状态

git reset的三种模式

git reset --soft表示回退到某个版本,并且保存工作区和暂存区的所有修改内容

git reset -- hard表示回退到某个版本,并且丢弃工作区和暂存区的所有修改内容

git reset --mixed表示回退到某个版本,并且只保存工作区 的修改内容并且丢弃暂存区的修改内容

1.Git是用来干嘛的,1小时学会git,git

首先我们重新回到learn_git的开始部分

然后重新创建一个空的带有git的文件夹,相当于工作区

然后我们加入了三个文件

接着分别提交

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

我们首先打开一个新的终端(还是bash)

接着我们将这个文件夹复制三份 分别来执行三种不同的soft命令

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

然后我们使用soft命令回退到之前的状态,

1.Git是用来干嘛的,1小时学会git,git

这是之前提交的状态码

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

我们可以注意到file3并没有添加到暂存区,这是因为我们回退到了第二个版本

1.Git是用来干嘛的,1小时学会git,git

1.Git是用来干嘛的,1小时学会git,git

我们接着我们的实验,进入到hard文件夹下面

使用reset hard进入到之前的状态

1.Git是用来干嘛的,1小时学会git,git

然后我们进行检测

1.Git是用来干嘛的,1小时学会git,git

lsb表示工作区的内容,git ls-files表示暂存区的内容

接着做那个git reset

1.Git是用来干嘛的,1小时学会git,git

谨慎使用git reset--hard 这个命令,不过使用了其实也没什么关系

1.Git是用来干嘛的,1小时学会git,git

不过如果使用了也没有关系,因为我们可以回退

1.Git是用来干嘛的,1小时学会git,git

这个时候我们可以发现通过这个标号,我们成功回退到了之前的状态

git diff

查看工作区、暂存区、本地仓库之间的差异

git diff 如果后面什么也不加,会默认比较工作区和暂存区之间的内容

1.Git是用来干嘛的,1小时学会git,git

我们以修改file3.txt文件为例子

1.Git是用来干嘛的,1小时学会git,git

第一行显示的是哪个文件改变了

第二行展示的是文件的哈希值 后面的10064表示的是文件的权限

1.Git是用来干嘛的,1小时学会git,git

接着我们提交,然后再次检测git diff 可发现没有发现异常

将我们的暂存区和本地仓库的区别也可以显现出来

1.Git是用来干嘛的,1小时学会git,git

使用git diff HEAD 命令即可比较工作区和本地仓库之间的差异

使用git diff --cached可以比较暂存区和本地仓库之间的差异

图片没有保存到本地,下次我注意一下

1.Git是用来干嘛的,1小时学会git,git文章来源地址https://www.toymoban.com/news/detail-851089.html

到了这里,关于1.Git是用来干嘛的的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 局域网lan设置中的代理服务器选项是干嘛的?

    局域网(LAN)设置中的代理服务器选项允许计算机使用代理服务器来访问互联网。代理服务器是一种充当客户端和服务器之间中介的服务器。当计算机尝试连接到互联网上的资源时,代理服务器会代表计算机发送请求,并返回响应。 代理服务器的使用可以带来多种好处,包括

    2024年02月09日
    浏览(45)
  • 功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试,具体是干嘛的?

    软件测试是一个广义的概念,他包括了多领域的测试内容,比如,很多新手可能都听说:功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试等,这些专业名词,但是绝大多数人都对这些名词一知半解,所以,今天我们就来给大家做个逐一的解释:

    2024年02月03日
    浏览(62)
  • Linux系统一般用来干嘛

    Linux系统是一种开源的操作系统,广泛应用于服务器、嵌入式设备、超级计算机等领域。它具有高度的稳定性、安全性和灵活性,可以用来进行各种各样的任务,例如: 1、服务器操作系统 Linux系统在服务器领域应用广泛,可以用来搭建Web服务器、数据库服务器、邮件服务器等

    2024年02月08日
    浏览(49)
  • .lib 文件,.dll 文件,.sln 文件都是干嘛的,他们各自都哪些内容,是如何生成这些文件的

    .lib 文件、 .dll 文件和 .sln 文件都是与 Microsoft Visual Studio 开发工具相关的文件。 .lib 文件(静态库文件): .lib 文件是静态库文件,包含一组对象文件的二进制代码和符号信息,可以被编译器链接到可执行文件中。当编译器编译程序时,它将 .a 文件(Linux)或 .lib 文件(Win

    2024年02月15日
    浏览(40)
  • 一小时Git入门教程【上篇】

    使用方式 命令行、图形化界面、IDE插件 首先配置用户名 再来配置邮箱 注意:以上命令只需要执行一次,如果之前已经执行过了,那么这一步可以省略。 保存用户名和密码到本地 git config --global credential.helper store 是一个 Git 命令,用于配置 Git 在处理远程仓库时如何存储凭据

    2024年04月08日
    浏览(44)
  • 【Git】速食Git,一文学会Git使用

    版本控制是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。【通俗来说就跟我们所玩的游戏一样,不断地更新迭代游戏内容,比如赛季更新呀,新出皮肤呀等】 ①实现跨区域多人协

    2024年02月01日
    浏览(51)
  • 利用chatGPT,半小时搞定git自动拉取代码

    果然是工具利用的好,极大的提高了生产力啊。 对我shell这种都没有写过100行代码的人来说,真的是提高了工作效率。按照以往的经验,我一边google,一边写代码,至少也要半天时间。 先来预览下结果: 上面的执行环境,就是我之前的文章写过的开源软件。 脚本update_code.

    2023年04月09日
    浏览(44)
  • 外贸版ChatGPT,每天节省5小时开发客户时间,可以用来干这些事情

    最近很多外贸朋友跟我说订单下降了很多,外贸市场行情不好,客户越来越难谈,获客成本也越来越高了等等 但是我还是会经常提醒:有尝试过升级转型吗,比如启用高效开发客户方法、提高跟进技巧等等 最近火爆出圈的 ChatGPT 也是越来越多外贸人知道了,已经被应用于很

    2023年04月23日
    浏览(45)
  • 【编程笔记】学会使用 Git

    📖 VCS: V ersion C ontrol S ystem 版本控制系统 📖 多人开发必用 版本控制 📖 版本控制工具: Git 、 SVN 、CVS、VSS、TFS 📖 分布式版本控制系统(Git):可立即看到代码的改变 📖 集中式版本控制系统(SVN):需要中央服务器 📖 Linus 两周写完 Git 代码的核心 📖 英文:https://g

    2024年04月23日
    浏览(29)
  • 学会使用Git 和 GitHub

    Git 和 GitHub 都是程序员每天都要用到的东西 —— 前者是目前最先进的 版本控制工具,拥有最多的用户,且管理着地球上最庞大的代码仓库;而后者是全球最大  同性交友  代码托管平台、开源社区。 在没有这两个工具时,编程可能是这样的: 哪个同事修改了我的代码

    2024年02月07日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包