12、git的基本操作

学习目标:

1、了解git的基本操作

2、为什么要学习Java语言

3、端正学习态度

学习过程:

    上一节课大概用了几个git的命令,本节课我们会对git常用的一些命令进行讲解。在将git命令之前我们先说一下这个忽略文件.gitignore

一、忽略文件.gitignore

    有些项目生成的临时文件,如果我们也提交到git版本上面是非常不妥的。因为bin目录下面的内容只是编译的临时文件,不需要版本管理,所以我们还需要建立一个git忽略文件文件.gitignore 的格式规范如下:

• 所有空行或者以注释符号# 开头的行都会被Git 忽略。

• 可以使用标准的glob 模式匹配。

• 匹配模式最后跟反斜杠(/)说明要忽略的是目录。

• 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

示例

此为注释– 将被Git 忽略

*.a # 忽略所有.a 结尾的文件

!lib.a # 但lib.a 除外

/TODO # 仅仅忽略项目根目录下的TODO 文件,不包括subdir/TODO

build/ # 忽略build/ 目录下的所有文件

doc/*.txt # 会忽略doc/notes.txt 但不包括doc/server/arch.txt

比如我们经常在在android项目中我们就

bin/

gen/

还有其他的一些常见的配置,一下是某个maven项目的需要忽略的文件和目录

# .gitignore for maven 
target/

*.releaseBackup

# web application files
#/web-app/WEB-INF


# IDE support files
/.classpath
/.launch
/.project
/.settings
/*.launch
/*.tmproj
/ivy*
/eclipse


# default HSQL database files for production mode
/prodDb.*


# general HSQL database files
*Db.properties
*Db.script


# logs
/stacktrace.log
/test/reports
/logs
*.log
*.log.*


# project release file
/*.war

 

二、提交

    在此之前,请一定要确认还有什么修改过的或新建的文件还没有git add 过,否则提交的时候不会记录这些还没暂存起来的变化。所以,每次准备提交前,先用git status 看下,是不是都已暂存起来了,然后再运行提交命令git commit:

Git 提供了一个跳过使用

暂存区域的方式,只要在提交的时候,给 git commit 加上-a 选项,Git 就会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过 git add 步骤提交

git commit -m "描述信息"

git commit -a -m '描述信息'

 

三、查看状态命令git status

git status
On branch master
Your branch is up-to-date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
        modified:   liubao-provider/src/test/resources/application.properties
        modified:   liubao-provider/src/test/resources/dubbo.properties
        modified:   liubao-web/pom.xml
        modified:   liubao-web/src/main/resources/dubbo.properties

四、git diff

git  diff 文件名称

  此命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容。若要看已经暂存起来的文件和上次提交时的快照之间的差异,可以用

git diff --cached

命令。(Git 1.6.1及更高版本还允许使用git diff --staged,效果是相同的,但更好记些。)

 

五、git reset

git reset HEAD

git reset HEAD 命令用于取消已缓存的内容。如果已经添加了可以使用一下命令

git reset 文件名称

git reset 后面可以设置soft,hard,mixed三种方式,还可以指定版本号,可以回到某一个版本的代码,如:

git reset --hard f36801544670e00b2f59a28e19017d2786c4085e

上面的命令会覆盖你本地所有的操作,请谨慎。

 

六、查看提交记录

git log,大家可以自己操作一下。

 

七、删除文件

   如果只是在本地删除,那么暂存空间里面还是有这个文件的,先把本地文件删除,然后再删除暂存空间

git rm grit.gemspec

   我们想把文件从Git 暂存区域移除中删除,但仍然希望保留在当前工作目录中。换句话说,仅是从跟踪清单中删除。比如一些大型日志文件或者一堆.a 编译文件,不小心纳入仓库后,要移除跟踪但不删除文件,以便稍后在.gitignore 文件中补上,用--cached 选项即可:

git rm --cached readme.txt

   如果只是简单地从工作目录中手工删除文件,运行 git status 时就会在 Changes not staged for commit 的提示。要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除,然后提交。可以用以下命令完成此项工作

git rm <file>

    如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f

git rm -f <file>

    如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中,换句话说,仅是从跟踪清单中删除,使用 --cached 选项即可

git rm --cached <file>

 

八、移动文件

   既然如此,当你看到Git 的mv 命令时一定会困惑不已。要在Git 中对文件改名,可以这么做:

$ git mv file_from file_to

   其实,运行git mv 就相当于运行了下面三条命令:

$ mv README.txt README

$ git rm README.txt

$ git add README

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值