当前位置: 首页 > news >正文

2023年商标注册流程图公司优化是什么意思

2023年商标注册流程图,公司优化是什么意思,新北建设局网站,做宣传单页的网站目录 一、版本回退 reset 1.1 指令: 1.2 参数说明: 1.3 演示: 二、撤销修改 情况一:对于工作区的代码,还没有 add 情况二:已经 add ,但没有 commit 情况三:已经 add &…

目录

一、版本回退 reset

1.1 指令:

1.2  参数说明:

1.3 演示:

二、撤销修改

情况一:对于工作区的代码,还没有 add 

情况二:已经 add ,但没有 commit 

情况三:已经 add ,并且也 commit 了

三、删除文件


一、版本回退 reset

1.1 指令:

执行 git reset 命令用于回退版本,可以指定退回某⼀次提交的版本。要解释⼀下 "回退" 本质是要将版本库中的内容进行回退,工作区或暂存区是否回退由命令参数决定:

git reset 命令语法格式为: 

git reset [--soft | --mixed | --hard] [HEAD] 
1.2  参数说明:
  • --mixed 为默认选项,使用时可以不用带该参数。该参数将暂存区的内容退回为指定提交版本内容,工作区文件保持不变。
  • --soft 参数对于工作区和暂存区的内容都不变,只是将版本库回退到某个指定版本。
  • --hard 参数将暂存区与工作区都退回到指定版本。切记工作区有未提交的代码时不要用这个命 令,因为工作区会回滚,你没有提交的代码就再也找不回了,所以使用该参数前⼀定要慎重。

我们用一个表格来理解:

参数工作区暂存区版本库
--mixed不变回退回退
--soft不变不变回退
--hard回退回退回退

HEAD 说明:

  • 可直接写成 commit id,表示指定退回的版本
  • HEAD表示当前版本
  • HEAD^ 上⼀个版本
  • HEAD^^ 上上⼀个版本
  • 以此类推...

可以使用〜数字表示:

  • HEAD~0 表⽰当前版本
  • HEAD~1 上⼀个版本
  • HEAD^2 上上⼀个版本
  • 以此类推...
1.3 演示:

为了方便演示,我们需要做一些准备工作,对ReadMe文件做了三次提交,具体内容如下:

#第一次提交
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"ReadMe version1"
[master 771fbc6] ReadMe version11 file changed, 1 insertion(+)#第二次提交
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"ReadMe version2"
[master e9c0a2d] ReadMe version21 file changed, 1 insertion(+)#第三次提交
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"ReadMe version3"
[master 691a70b] ReadMe version31 file changed, 1 insertion(+)#查看Git信息
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git log --pretty=oneline
691a70bc80bc67c3da14a4f547866559bb78a932 (HEAD -> master) ReadMe version3
e9c0a2d43dbb427bf185fe268e48ddfb3a4f4c4e ReadMe version2
771fbc626fcfea13032326165d60a30d1686a122 ReadMe version1
bec8f39d1c9add6fa68b24cbe58da893297c7df0 modify ReadMe
33d37b6d9be1ff2ab7ef5442615ba08afc048073 add ReadMe

如果我们提交完version3,然后觉得version3的代码写的太烂了,想要基于version2重新编写,此时我们就需要回退到version2,由于我们想让工作区的代码也跟着回退,所以我们需要使用--hard参数

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git reset --hard HEAD^
HEAD is now at e9c0a2d ReadMe version2
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc

可以发现,工作区的代码已经回退到version2了,我们再次使用git log 指令,发现HEAD指向了version2了

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git log --pretty=oneline
e9c0a2d43dbb427bf185fe268e48ddfb3a4f4c4e (HEAD -> master) ReadMe version2
771fbc626fcfea13032326165d60a30d1686a122 ReadMe version1
bec8f39d1c9add6fa68b24cbe58da893297c7df0 modify ReadMe
33d37b6d9be1ff2ab7ef5442615ba08afc048073 add ReadMe

到这里回退功能就展示完了,但是如果因为一些原因又需要回退到version3怎么办,但是此时我们用 git log 查不到 version3 的 commit id,那应该怎么回退呢?

如果你的运气好一点在之前使用git log查看时保留了version3的commit id,那你就可以直接恢复到version3,但是如果找不到的话,其实GIt还提供了一个指令 git reflog ,该指令用于查看本地每一个指令的记录

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git reflog
e9c0a2d (HEAD -> master) HEAD@{0}: reset: moving to HEAD^
691a70b HEAD@{1}: reset: moving to 691a70bc80bc67c3da14a4f547866559bb78a932
691a70b HEAD@{4}: commit: ReadMe version3
e9c0a2d (HEAD -> master) HEAD@{5}: commit: ReadMe version2
771fbc6 HEAD@{6}: commit: ReadMe version1
bec8f39 HEAD@{7}: commit: modify ReadMe
33d37b6 HEAD@{8}: commit (initial): add ReadMe

这样我们就可以找到version3的 commit id,虽然这里查看的只是version的部分commit id,但是我们仍然那可以使用这部分id来恢复到version3

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git reset --hard 691a70b
HEAD is now at 691a70b ReadMe version3
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git log --pretty=oneline
691a70bc80bc67c3da14a4f547866559bb78a932 (HEAD -> master) ReadMe version3
e9c0a2d43dbb427bf185fe268e48ddfb3a4f4c4e ReadMe version2
771fbc626fcfea13032326165d60a30d1686a122 ReadMe version1
bec8f39d1c9add6fa68b24cbe58da893297c7df0 modify ReadMe
33d37b6d9be1ff2ab7ef5442615ba08afc048073 add ReadMe

可往往是理想很丰满,现实很骨感。在实际开发中,由于长时间的开发了,导致 commit id 早就找 不到了,可突然某⼀天,我又想回退到 version3,那该如何操作呢?貌似现在不可能了

值得说的是,Git 的版本回退速度非常快,因为 Git 在内部有个指向当前分支(此处是master)的  HEAD 指针, refs/heads/master 文件里保存当前 master 分支的最新 commit id 。当我们在回退版本的时候,Git 仅仅是给 refs/heads/master 中存储⼀个特定的version,可以简单理解成如下示意图:

二、撤销修改

如果我们在我们的⼯作区写了很长时间代码,越写越写不下去,觉得自己写的实在是垃圾,想恢复到上⼀个版本。

情况一:对于工作区的代码,还没有 add 

方法1:

首先最简单的方法就是直接删掉多余的代码,但是这个方法很不实用,如果你写了几行代码还好说,如果写了几百行几千行,在手动删除时是很麻烦的,甚至可能修改出bug

方法2:

Git 其实还为我们提供了更好的方式,我们可以使用 git checkout -- [file] 命令让工作区的文件回到最近⼀次 add 或 commit 时的状态。 要注意 git checkout -- [file] 命令中的  -- 很重要,切记不要省略,⼀旦省略,该命令就变为其他意思了,后面我们再说。示例如下:

#到ReadMe文件添加一行代码hello,并没有add 和 commit
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
hello  zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git checkout -- ReadMe
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
情况二:已经 add ,但没有 commit 

add 后数据还是保存到了暂存区呢?怎么撤销呢?

首先使用 git reset --mixed 指令 ,该命令可以将暂存区 的内容退回为指定的版本内容,但工作区文件保持不变。那我们就可以回退下暂存区的内容了!!!

#向ReadMe文件添加一行
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
hello#并且add到暂存区
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .#回退
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git reset HEAD ReadMe
Unstaged changes after reset:
M	ReadMe#查看当前状态
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git status
On branch master
Changes not staged for commit:(use "git add <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)modified:   ReadMeno changes added to commit (use "git add" and/or "git commit -a")

执行完 git reset  --mixed 指令后,使用git status指令查看当前的状态,发现此时暂存区中是干净的,只是工作区中存在未add的代码,所以此时的问题就转变为了情况一

#将工作区代码恢复到上一个版本
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git checkout -- ReadMe
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
情况三:已经 add ,并且也 commit 了

不要担心,我们可以 git reset --hard HEAD^ 回退到上⼀个版本!不过,这是有条件的,就是 你还没有把自己的本地版本库推送到远程。我们后面会讲到远程 版本库,一旦你推送到远程版本库,你就真的惨了……

#添加一行代码
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ vim ReadMe 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd
hello#add并且commit
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"test"
[master d8b9ba8] test1 file changed, 1 insertion(+)#回退
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git reset --hard HEAD^ 
HEAD is now at 691a70b ReadMe version3
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ cat ReadMe 
hello git
hello git
aaaaa
bbbbb
ccccc
ddddd

三、删除文件

在 Git 中,删除也是⼀个修改操作,我们实战⼀下,如果要删除 file 文件,怎么搞呢?如果你这样 做了:

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ touch file
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git add .
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"测试删除"
[master 4d9912b] 测试删除1 file changed, 0 insertions(+), 0 deletions(-)create mode 100644 filezyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ rm file 
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git status
On branch master
Changes not staged for commit:(use "git add/rm <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)deleted:    fileno changes added to commit (use "git add" and/or "git commit -a")

这样删除是有用的,仅仅删除了工作区的文件,如果我们用git status查看,会提示我们哪些文件被删掉了,此时工作区和版本库的文件就不一样了。

如果确实想删除版本库中的文件,这时就需要使用 git rm 将文件从暂存区和工作区中删除,并且 commit :

zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git rm file 
rm 'file'
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git commit -m"delete file"
[master fb025b3] delete file1 file changed, 0 insertions(+), 0 deletions(-)delete mode 100644 file
zyq@iZm5egpp4a85g2tfliaeikZ:~/gitcode$ git status
On branch master
nothing to commit, working tree clean

 这样一个文件就删除了

http://www.hkea.cn/news/754869/

相关文章:

  • 泰安诚信的网站建设b站推广入口2023年
  • 高校网站建设资料库东莞seo推广公司
  • 电子印章手机在线制作软件四川seo整站优化费用
  • 个人风采网站制作外贸网站平台哪个好
  • 沈阳企业建站谷歌推广和seo
  • .la域名做的网站如何快速推广app
  • 广州优化网站建设怎么用手机制作网站
  • 做微网站的第三方学网络营销
  • 湖南做网站的公司有哪些搜索引擎是什么
  • flash网站管理系统seo优化排名易下拉用法
  • 永年网站建设友链互换平台推荐
  • 企业网站的设计公司网络广告营销的典型案例
  • 高校思政主题网站建设的意义关键词歌词任然
  • 哪里做网站比较快2345网址导航下载桌面
  • 广州建设委员会官方网站凡科建站下载
  • 全球做网站的公司排名百度一下你就知道官网
  • 小企业网站价格免费发链接的网站
  • 买了空间和域名 怎么做网站哪家公司网站做得好
  • 网站备案是否关闭衡阳网站建设公司
  • 遂昌建设局网站个人怎么做网站
  • 软件开发和网站建设网络营销的未来6个发展趋势
  • 做网站一年多少钱免费seo网站推广
  • 智通人才网东莞最新招聘信息官网seo是如何做优化的
  • 个人做跨境电商网站百度地图导航手机版免费下载
  • 阿里云注册网站之后怎么做网站百度联盟是什么
  • 动画制作视频河南网站排名优化
  • 网站关键词怎么做排名掌门一对一辅导官网
  • 现在什么网站做推广比较好网页设计需要学什么
  • 个人购物网站 怎么建网络营销包括
  • 有没有做鸭的网站工作室招聘广州网站优化工具