Git 学习记录

git 回退版本

git reset 命令用于回退版本,可以指定退回某一次提交的版本。

git reset 命令语法格式如下:

git reset [--soft | --mixed | --hard] [HEAD]

--mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。

git reset  [HEAD] 

实例:

$ git reset HEAD^            # 回退所有内容到上一个版本  
$ git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本  
$ git reset  052e            # 回退到指定版本
$ git reset --hard HEAD^^    # 回退到上上个版本

HEAD 说明:

  • HEAD 表示当前版本
  • HEAD^ 上一个版本
  • HEAD^^ 上上一个版本
  • HEAD^^^ 上上上一个版本

以此类推...

也可以使用 ~ 数字表示:

  • HEAD~0 表示当前版本
  • HEAD~1 上一个版本
  • HEAD^2 上上一个版本
  • HEAD^3 上上上一个版本

git 撤销或者丢掉本地修改

在没有 git add 的情况下:

$ git checkout -- filepathname

在已经 git add 的情况下就只能使用 git reset 这样的命令。

一些常用的命令

git config --global user.name "fanyfull"
git config --global user.email "lxyfl6688@gmail.com"
git commit -m "Add a banana to the shopping list"

git commit --message "Add a banana to the shopping list"

m 是 message 的意思。参见 https://git-scm.com/docs/git-commit,可以查看各种 options。

git commit --amend --reset-author

When used with -C/-c/--amend options, or when committing after a conflicting cherry-pick, declare that the authorship of the resulting commit now belongs to the committer. This also renews the author timestamp.

这个命令应用的场景是,clone 别人的项目之后,然后自己再进行开发,然后在本地提交。


参考:

1、https://www.runoob.com/git/git-reset.html


Git 学习记录
http://fanyfull.github.io/2022/02/09/Git-学习记录/
作者
Fany Full
发布于
2022年2月9日
许可协议