用于知识记录。后续有新的的内容,例子,将持续更新本文档。
git revert 撤消上一次提交的更改但是会创建一个新的提交来撤消该提交所做的更改
git revert HEAD
Git revert
命令将一个提交作为参数,
撤消上一次提交的更改但是会创建一个新的提交来撤消该提交所做的更改。
git show 显示提交详细信息
$ git show <commit-id>
commit-id
可以通过 git log
获取或命令参数中的HEAD
git mv 重命名文件
重命名文件; 即使文件在暂存区即已经git add
了也可以修改$ git mv <oldfilename> <newfilename>
git rm 从工作树和索引中移除文件
$ git rm <file>
git clean 从工作树中移除未跟踪文件
$ git clean
添加-n
选项将只显示将要移除的文件。添加-f选项实际上会移除文件。
在默认的情况下,不会移除.gitignore
配置文件下列出的文件。但是,如果您指定-x选项,.gitignore
下列出的文件将从工作树中移除。
git checkout 将文件恢复到工作树
即把文件从已经add的状态恢复成add前
git checkout -- <file>
git checkout -- .
把所有git add
的文件都恢复到git add
前
git reset 撤销更改、移动 HEAD 指针以及重置暂存区
git reset
是 Git 中一个非常有用的命令,可以用来撤销更改、移动 HEAD 指针以及重置暂存区等操作。下面是 git reset 的详细用法和一些示例说明:
git reset 基本用法:
git reset
git reset <commit>
:将当前分支的HEAD
指针移动到指定的 <commit>
,并将暂存区重置为该 <commit>
的状态,但工作目录不受影响。
git reset --hard 回到特定提交但本次提交的内容会全部丢失
git reset --hard <commit>
:将当前分支的HEAD
指针、暂存区和工作目录都重置为指定的 <commit>
的状态。慎用,会丢失未提交的更改。
什么时候用这个?
比如你刚已经git add git commit到本地的内容,你想撤销这次的提交,并且这次提交的内容全都不要了,就用git reset --hard HEAD
这样会回到你提交前本地最新的那笔提交。
如果你想回到过去的某笔特定的提交,获取这次提交的commit id
,且你本次提交的所有内容都不要了,就使用git reset --hard commit-id
这样就能回到你想要的那笔提交了(当然这个指的是你本地的)
git reset --soft 回到特定提交,本次提交的内容会全部恢复到add之前的状态
git reset --soft <commit>
:将 HEAD
指针移动到指定的 <commit>
,但保留暂存区和工作目录不变。这样你可以重新提交之前的更改。
同理,不过这个会把你之前提交的内容全部恢复到工作树,就是你提交之前,add之前的状态。会保留你的文件。
git reset 示例说明:
- 撤销最后一次提交并保留更改:
git reset --soft HEAD~1
这个命令会将 HEAD
指针移动到倒数第二次提交,保留最后一次提交的更改在暂存区中,你可以修改后重新提交。
- 撤销最后一次提交并丢弃更改:
git reset --hard HEAD~1
这个命令会将 HEAD
指针移动到倒数第二次提交,并丢弃最后一次提交的更改,包括暂存区和工作目录中的更改。
- 将暂存区的更改移除暂存状态:
git reset HEAD <file>
这个命令会将指定文件 <file>
从暂存区中移除,但保留在工作目录中的更改。
- 将 HEAD 指针移动到特定的提交:
git reset --hard <commit_hash>
这个命令会将 HEAD 指针
移动到指定的 <commit_hash>
,并且重置暂存区和工作目录为该提交的状态。
注意事项:
- 使用
git reset
命令时要谨慎,因为它会改变仓库的状态,可能会导致数据丢失。 - 在进行
reset
操作之前,建议先使用git status
和git diff
等命令来查看当前的状态和更改,以免造成意外操作。
git add -u 仅将修改和删除的文件添加到索引
$ git add -u
此命令将仅注册已添加到索引的文件的更改。它不会暂存未跟踪的文件
git init 在当前目录下创建一个新的 Git 仓库
执行 $ git init
命令会在当前目录下创建一个新的 Git 仓库。具体来说,以下是$ git init
命令执行后可能发生的一些主要步骤:
- 初始化仓库:Git 会在当前目录下创建一个名为 .git 的子目录,这个目录包含了 Git 仓库的所有必要文件和子目录。
- 创建默认分支:Git 会创建一个默认的主分支,通常是
master
分支(在新版本的 Git 中可能是 main 分支),用于跟踪项目的主要开发进展。 - 创建初始提交:Git 会创建一个初始的提交(
commit
),表示仓库的初始状态。这个提交包含了当前目录下所有文件的快照。 - 设置配置:Git 会在
.git
目录中创建一个配置文件,用于存储仓库的配置信息,比如用户名、邮箱等。 - 完成初始化:一旦执行
$ git init
完成,当前目录就成为了一个 Git 仓库,你可以使用 Git 来进行版本控制、提交更改、创建分支等操作。
在执行完$ git init
后,你就可以开始使用 Git 来管理项目的版本控制了。记得在使用 Git 前,需要先配置用户信息,例如设置用户名和邮箱,以便 Git 能够正确记录提交信息。
扩展
git init -h
git revert -h
git mv -h
git rm -h
git clean -h
git reset -h
文章来源:https://www.toymoban.com/news/detail-841584.html
参考
适合初学者的简单 Git 教程文章来源地址https://www.toymoban.com/news/detail-841584.html
到了这里,关于git基础命令(二)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!