git怎么用(git怎么用sourcetree回退版本)

git怎么用(git怎么用sourcetree回退版本)补 1 gitee 上回退自己的版本 先在本地仓库回退版本 输入如下命令 git reset hard lt 版本号 gt 再将本地仓库推送到远程仓库 git push lt 仓库名 gt lt 分支 gt f f 必须加上 表示强制推送 不管是否有文件丢失 如果非要给 git 定位一个核心的话

大家好,我是讯享网,很高兴认识大家。



补1: gitee上回退自己的版本。

  1. 先在本地仓库回退版本,输入如下命令:

git reset –hard <版本号>

  1. 再将本地仓库推送到远程仓库:

如果非要给git定位一个核心的话,我想不是什么文件提交,本地仓储,而是版本回退。
先解释一下什么是版本回退,举个例子如下:
假设有个程序员小芳开发一套软件,软件名为demo,这个软件有三个版本,即demo1,demo2,demo3;现在小芳手里只有demo3软件程序,她认为demo2软件程序优于demo3,所以她想回退到demo2,以便后续开发。demo3到demo2就是版本回退。
git完美的解决这个问题,git记录了各个版本的信息,在实际开发中,就相当于各个时期的文件。
现在我们借用前文创建的demo仓库先连续开发三个版本,方便后续的版本回退操作介绍:
版本一:在demo仓库下的src文件夹中添加一个version.txt文件,文件内容如下:

this is version_1

在dos仓库目录下执行如下命令:

版本二:将version.txt文件内容修改,改为如下内容:

this is version_2

在dos仓库目录下执行如下命令:

版本三:再将version.txt文件内容修改,改为如下内容:

this is version_3

在dos仓库目录下执行如下命令:


讯享网

android git 回退版本_git

commit cb71ef021c79d7ee6f64ea0 (HEAD -> master)
Author: @.com @.com Date: Fri May 15 11:16:15 2020 +0800

    this is version_3

commit d146ed86e6cfc87f16af09be45
Author: @.com @.com
Date: Fri May 15 11:15:54 2020 +0800

     this is version_2

commit 5629f26a43b7e5807a
Author: @.com @.com
Date: Fri May 15 11:15:32 2020 +0800

    this is version_1

commit a0e221b13b81c08f7a51cfe06ce0cf6e08b410d7
Author: @.com @.com
Date: Fri May 15 10:38:13 2020 +0800

    add hello world in readme.md

commit bb014661e21b3f02862f946a74b19a61545f305b (origin/master, origin/HEAD)
Author: liangmu @.com
Date: Thu May 14 17:53:22 2020 +0800
    print hello world

commit bb014661e21b3f02862f946a74b19a61545f305b (origin/master, origin/HEAD)
Author: liangmu @.com Date: Thu May 14 17:53:22 2020 +0800
    print hello world

其中,commit后续的内容一直到左括号左边,是本次提交的唯一标识符,俗称ID;其生成方式是以SHA1算法,将仓库编码输出,其输出结果就是ID了,当然这也是仓库中的版本号(系统生成的,不代表你自己定义的版本号)。

可能有人会有疑问,为啥子不直接1,2,3呢?难道创造这个系统的人傻了?我一直秉持一个观点,别人那么做必定有别人的道理,经常说别人傻逼的人也是一个傻逼。抱着求学好知的态度,博主查了很多资料,得出一个结论,这个结论口述没有意思,举个例子吧!

假设程序员小芳和程序员老王共同开发一个软件,小芳对自己开发的版本以1,2,3命名,老王也一样;然后老王有天偷懒了,他的开发进度停留在2;而小芳是个勤快的娃,一直开发到版本4;两个人将自己开发的软件都提交到仓库,新提交的会顶替原内容。后来小芳开发软件需要用到版本2的内容,提取出来的内容可能是老王开发的,这显然不符合小芳的实际要求。如果利用sha1算法生成的版本号,这样就可以有效的避免存储冲突。

其他的信息,看英文就明白啥子意思了,没必要说。

asdfniwnegnainanf4 (HEAD -> master) this is version_3
d146ed86e6cfc87f16af09be45 this is version_2
5629f26a43b7e5807a this is version_1
a0e221b13b81c08f7a51cfe06ce0cf6e08b410d7 add hello world in readme.md
bb014661e21b3f02862f946a74b19a61545f305b (origin/master, origin/HEAD) print hello world
f8b38b12c541b28f2a47e388beefbbb6 Initial commit


现在我们将版本回退到上一个版本,在命令行窗口输入如下命令:

git reset –hard HEAD^

执行结果如下:

HEAD is now at this is version_2

现在我们再用git log命令来查看当前head指针位置,输出结果如下:

d146ed86e6cfc87f16af09be45 (HEAD -> master) this is version_2
5629f26a43b7e5807a this is version_1
a0e221b13b81c08f7a51cfe06ce0cf6e08b410d7 add hello world in readme.md
bb014661e21b3f02862f946a74b19a61545f305b (origin/master, origin/HEAD) print hello world
f8b38b12c541b28f2a47e388beefbbb6 Initial commit

git reflog

其执行结果如下:

(HEAD -> master) HEAD@{0}: reset: moving to HEAD^
c HEAD@{1}: commit: this is version_3
(HEAD -> master) HEAD@{2}: commit: this is version_2
5629f26 HEAD@{3}: commit: this is version_1
a0e221b HEAD@{4}: commit: add hello world in readme.md
bb01466 (origin/master, origin/HEAD) HEAD@{5}: clone: from https://github.com/llyFromChina/demo.git

每条数据前面的那段数据表示版本ID,也就是sha-1算法生成的版本号。你可以利用git reset –hard [版本号]命令,将仓库重置到version_3版本下。


小讯
上一篇 2025-04-18 12:17
下一篇 2025-06-01 16:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/194287.html