-
这将取消您可能已暂存的所有文件
git add
:
git reset
-
这将还原所有本地未提交的更改(应在repo root中执行):
git checkout .
您还可以仅将未提交的更改还原到特定文件或目录:
git checkout [some_dir|file.txt]
还原所有未提交更改的另一种方法(更长时间键入,但可以从任何子目录工作):
git reset --hard HEAD
-
这将删除所有本地未跟踪文件,因此
只
保留git跟踪文件:
git clean -fdx
警告:
-x
还将删除所有被忽略的文件,包括指定的文件
.gitignore
!您可能希望
-n
用于预览要删除的文件。
总结一下:执行以下命令基本上等同
git clone
于原始来源的新鲜(但它不会重新下载任何内容,因此速度更快):
git reset
git checkout .
git clean -fdx
这种情况的典型用法是在构建脚本中,当你必须确保你的树是绝对干净的 - 没有任何修改或本地创建的目标文件或构建工件,并且你想让它工作得非常快并且不能重新每次都克隆整个存储库。
这将取消您可能已暂存的所有文件git add: git reset 这将还原所有本地未提交的更改(应在repo root中执行): git checkout . 您还可以仅将未提交的更改还原到特定文件或目录: git checkout [some_dir|file.txt] 还原所有未提交更改的另一种方法(更长时间键入,但可以从任何子目录工作): git reset --hard HEAD 这将删除所有本地未跟踪文件,因此只保留git跟踪文件: git clean -fdx 警告: -x 还将
Checkout:切换分支
Add:将开发项目或指定文件添加到git仓库管理。
是将当前更改或者新增的文件加入到Git的索引中,加入到Git的索引中就表示记入了版本历史中,这也是提交之前所需要执行的一步。
Branches:点击切换开发分支
Tag:为项目打tag(标签)
可以将某个具体的版本打上一个标签,这样你就不需要记忆复杂的版本号哈希值了
Annotate:查看文件修改记录
Pull:更新gitlab上的代码
从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地
Push:提交代码到本地git仓库或者到远程git仓库
Rebase:还原一个版本的修改.
Show Current Revision :显示当前项目文件修改前的版本
stash:将当前未提交的工作存入Git工作栈中
检查本地状态,可以查看当前所在分支、新增或被修改的文件
1.3 git checkout
还原某文件所作的修改,也可以 “git checkout .” 还原所有修改
1.使用 git fsck --lost-found
2.进入项目下的.git文件夹,找到lost-found/other文件,这个文件夹下面的文件就是丢失的文件
3.文件名需要自己重新改回来就ok了
4.惊险的找回了自己的代码
用git checkout切换本地分支从b1到b2时, 如果b1的本地文件有修改, 会发生冲突。
(b1和b2不在一个commit id上)
设b1和b2都有123.txt这个文件(这2个branch下123.txt文件内容可相同可不相同); 当前在b1下, 修改了一行123.txt, 然后想git checkout b2切换到b2分支, 就会提示冲突!
实际的应用场景是这样:...
在合并lorem分支之前对master进行一些更改。
lorem分支加法
洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul洛雷姆ipsul
测试difftools
测试difftools的一些更改
提交和修改的一些更改
进行此更改以提交和修改其他更改。
修改此更改(我也发现错字)
一些更改需要修改。 弄乱了东西(commitege没有更新)再次修改。
进行一些更改以提交并还原到
测试多行提交消息...
一些变化要掌握
用于通过审查建议添加的请求拉动请求...
从提交请求3中的提交关闭的问题
git commit
git commit --amend 最近一次提交的信息
git rebase -i [需要修改commit的parent commit id] 交互式对历史commit信息修改
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
pwd命令用于显示当前目录。在我的Mac上,这个仓库位于/Users/michael/learngit。
如果你使用Windows系统,为了避免遇到各种莫名其妙的问
要将 Git 仓库重置为原始版本,可以使用 `git reset` 命令。该命令将当前分支指向指定的提交,并将索引和工作目录回滚到该提交的状态。
要将 Git 仓库重置为原始版本,可以使用以下命令:
git reset --hard HEAD
这会将仓库重置为当前分支的最新提交。`--hard` 选项指定要将工作目录完全重置为提交的状态。如果要将仓库重置到不同的提交,则可以将 `HEAD` 替换为相应的提交哈希值或分支名称。
请注意,`git reset` 命令是一项危险的操作,因为它会丢失从重置点到当前位置所做的任何更改。因此,应谨慎使用该命令,并确保在重置之前备份所有重要的更改和文件。