首页 > 其他分享 >Git使用教程-安装、配置、建立本地仓库、本地仓库的基本操作(查看工作区的文件状态,添加文件至暂存区,提交,查看提交日志,版本回退)

Git使用教程-安装、配置、建立本地仓库、本地仓库的基本操作(查看工作区的文件状态,添加文件至暂存区,提交,查看提交日志,版本回退)

时间:2023-09-01 20:11:38浏览次数:55  
标签:Git 文件 git 提交 仓库 文件夹 本地

Git介绍

一、 为什么要学习Git?

  在开发一个软件时,这份工作通常需要一个team来完成。我们把这个软件划分为不同的模块,每个人负责一个模块的开发和维护。在这个过程中,如何保持team中成员软件开发的同步,保存开发周期中各个历史版本,解决team中成员间开发的版本冲突?Git是对这个问题的最好的答案。

  Git是由Linus Torvalds 为帮助管理Linux内核而开发的一个开源的版本控制软件。Git是分布式版本控制工具,它具有以下特点:速度、简单的设计、完全分布式、对非线性开发提供强有力的支持、能够管理像Linux内核这样的大型软件,所以他有较快的速度和支持数据量比较大的版本管理。

  Git有本地仓库和远程仓库组成:

 

二、Git的安装

  安装过程比较简单,一路next即可,这里不再讲述。需要说明的是完成Git的安装后,他会提供Git bash的命令行界面,命令的语法规则同Linux。这也是因为他是为管理Linux内核的而生的。当然不熟悉命令行界面的也可以使用Git提供的图形化界面工具Git GUI。建议使用Git bash,还能方便你联系使用Linux的各种常用命令。

三、Git的配置

  配置邮箱user.email和用户名user.name

git config --global user.name "***"

git config --global user.email "***"

  

 

四、本地仓库和远程仓库的操作

先放张Git的工作流程图

 

  Git就是个版本控制软件,他可以管理任何事物的各种版本(不局限于程序)。这里我们以一个文件夹举例,这个文件夹里可以以存放各种文件(.c,.cpp,.a,.h,.bak等等)。

本地仓库操作

一、本地仓库的操作

(1)建立本地仓库

我们在使用Git对这个文件夹进行版本管理时,我们需要让这个文件夹与Git建立联系,可以这么理解“为这个文件夹添加Git版本工具,或者将这个文件夹纳入Git管理的范畴”。下面演示一下这个文件夹与Git建立联系的过程:对目标文件夹进行Git 初始化。每一个被Git初始化过的文件夹都是一个本地仓库。

命令:git init

我们在一个空的文件夹git_show中进行操作,将这个文件夹在GitBash中打开

 

  

这里我们文件夹git_show创建文件夹git_demo1,并把它初始化为一个本地仓库:

 (2)本地仓库工作区划分与文件状态的变化

  我们把本地仓库的几个区域:工作区、暂存区和仓库。我们对文件进行操作时,文件的状态会发生改变。所有文件都在工作区中,而且新文件的初始状态处于未跟踪。当对文件进行修改后文件的状态会变为未暂存(还是未追踪,此状态可以忽略),我们使用 git add filename 将文件添加到暂存区 ,文件的状态变为已暂存状态(未提交),使用git commit -m "**",将暂存区的文件提交到仓库中。

 

 

 查看文件状态(git status):

 我们对file1.txt进行修改,并加入到暂存区(git add file1.txt),file2.txt不动,再来查看文件的状态:

 看到file1.txt的状态是等待被提交(未提交),file2.txt是未跟踪。接下来我们将file1.txt,file2.txt都将提交到仓库中

 查看提交日志:git log --[options],我在这里创建了给git log 和一些常用参数起了个别名git-log。在~/.bashrc中添加,并source一下。

#查看git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'

 创建文件file3.txt,file4.txt。然后分别提交,查看提交日志,再来版本回退(git reset -)。

 

 此时我们进行回退后发现有一次提交不见了,如果我们想回到消失的那个状态可以使用git relog,查看所有提交的状态,然后执行git reset --hard ***

 如果我们想要工作目录中某些文件不被git管理,添加.gitignore。例如此时我们要求.a文件不被git管理。我们进行演示:此时我们是含有.ignore,工作目录是含有file1.a的。这时我们删除.gitignore,查看状态。再来进行版本回退。可以看到工作区中文件状态的变化。

 查看.gitignore的文件的内容

 

标签:Git,文件,git,提交,仓库,文件夹,本地
From: https://www.cnblogs.com/20203923rensaihang/p/17672459.html

相关文章

  • 8月《中国数据库行业分析报告》已发布,聚焦数据仓库、首发【全球数据仓库产业图谱】
    为了帮助大家及时了解中国数据库行业发展现状、梳理当前数据库市场环境和产品生态等情况,从2022年4月起,墨天轮社区行业分析研究团队出品将持续每月为大家推出最新《中国数据库行业分析报告》,持续传播数据技术知识、努力促进技术创新与行业生态发展,目前已更至第十六期,并发布了共计1......
  • 《落实算法安全主体责任基本情况》范文,修改主体即可提交
      在数字化时代,算法已经成为了商业竞争和创新的关键要素。然而,算法的广泛应用也引发了对其安全性和合规性的关切。《落实算法安全主体责任基本情况》作为算法备案过程中的一环,具有极高的专业性,需要企业全面考虑算法的隐私保护、数据合规、风险预防等一系列关键问题。正因如......
  • iOS 最新 APP提交上架流程~(打包 ipa)
    文章目录苹果开发者账号个人开发者账号公司开发者账号:企业开发者账号:1、申请APPID2、申请邓白氏码(个人开发者账号不需要)3、等待邓白氏申请成功4、开发者账号申请5、申请过程中实名认证出错随着苹果2020年对开发者账号申请流程变更,2020年之前的申请开发者账号流程已经成为过去时,现在......
  • k8s 挂载本地目录
    kind:StatefulSetmetadata:namespace:oasisname:redis-cluster-node-nsspec:serviceName:"redis-cluster-svc"template:spec:containers:volumeMounts:-name:sys-timemountPath:/etc/localtime-n......
  • dedebiz发布文章自动提交到百度搜索的方法
    修改程序文件依次打开/admin/article_add.php和article_edit.php找到ClearMyAddon($id, $title);在其上面加入//自动提交到百度else{$urls[]='http://www.baidu.com/'.$artUrl;$api='http://data.zz.baidu.com/urls?site=www.baidu.com&token=填写你的';$ch=cu......
  • Docker镜像仓库
                     ......
  • Everything-高效快捷的本地搜索工具
    Everything是由voidtools开发的一款文件搜索工具,这款软件是基于名称实时定位文件和目录。Everything功能强大,体积小巧,第一次安装使用时会建立一个索引数据库,将所有文件和文件夹的名称导入其中,后续使用能够以极快的速度快速搜索,查找到你所需要的文件。Everything软件特点软件小巧,......
  • windows本地部署AI实现无限对话
    前言:最低显卡配置2G本都部署步骤:一、安装服务模型1、下载地址github地址:https://github.com/josStorer/RWKV-Runner视频教程:https://www.bilibili.com/video/BV1hM4y1v76R/?vd_source=2d24c0d12aefeea933bdc676f039cab62、选择下载版本 3、......
  • 高并发下的重复提交问题
    用户下订单购买,因为各种原因(网络卡,快递点击等)重复提交2个或者以上一模一样的订单,由于是同时提交的,第一个订单执行扣款生成订单未完成时候,第二个已经进来了,导致付一笔钱购买了2次或多次商品。 解决方案:1、缓存lock,缓存此用户的操作行为,注意紧紧缓存操作的标志,下次进入判断此标志是......
  • Git提交信息规范
    1.背景Git是目前世界上最先进的分布式版本控制系统,在我们平时的项目开发中已经广泛使用。而当我们使用Git提交代码时,都需要写CommitMessage提交说明才能够正常提交。gitcommit-m"提交"然而,我们平时在编写提交说明时,通常会直接填写如"fix"或"bug"等不规范的说明,不规范......