git reset向上移动分支,原来指向的提交记录就跟从来没有提交过一样。 让我们来看看演示: 1 git reset HEAD~1 漂亮!Git把 main 分支移回到C1;现在我们的本地代码库根本就不知道有C2这个提交了。(在reset后,C2所做的变更还在,但是处于未加入暂存区状态。) 虽然在你的本地分支中使用git reset很方便,但是这种“...
git reset 向上移动分支,原来指向的提交记录就跟从来没有提交过一样。 看一个例子: 执行git reset HEAD~1 后,结果为: Git 把 main 分支移回到 C1;现在我们的本地代码库根本就不知道有 C2 这个提交了。 在reset后, C2 所做的变更还在,但是处于未加入暂存区状态。 搞...
我们发现一切都恢复到了illustrate unstage commit这个提交之前的状态,那么我们只需要从缓存当中删除a.test,再次提交即可。 这么操作完了之后你会发现在git log当中illustrate unstage commit这个提交不见了。的确如此,因为它被我们撤销了,同样,reset操作也会导致本地和远程状态不一样。如果要push的话也需要-f强制进行,...
$ git resetHEAD# 回退到当前版本 $ git checkout--aaa.txt # aaa.txt为文件名 注意:情况II 和 情况III 只有回退的版本不一样,对于 情况II,并没有 $ git commit,仓库版本也就不会更新和记录,所以回退的是当前版本 情况III 修改了文件,并提交到仓库区\(即编辑之后git add和gitadd和 git commit -m ) ...
你已经提交了,然后你又在本地更改了,如果你选keep,那么提交的内容会丢失,你提交后又本地修改未提交的内容不会丢失。 然后,之前错误提交的commit就在本地给干掉了。但是远程仓库中的提交还是原来的样子,你要把目前状态同步到远程仓库。也就是需要把那几个commit删除的操作push过去。
可以创建git-demo目录,然后再git init创建版本库 也可以git init git-demo,自动完成目录的创建并创建版本库 2.ls -aF(-a表示列出所有的文件,包括.开头的文件,-F表示列出文件的类型标识符,比如/表示目录)可以看的隐藏目录.git,这个.git目录就是git版本库,又叫仓库(repository),版本库位于工作区的根目录下 ...
没有的提交的,都返回到原来的状态 git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。 git reset --hard HASH #返回到某个节点,不保留修改。 git reset --soft HASH#返回到某个节点。保留修改 1. 2. 3. 4. 删除本地分支:git branch -d 分支名称...
reset向上移动分支,原来指向的提交记录就跟从来没有提交过一样。 注:这种只对本地分支有效,对远程分支无效。如下所示,我们通过gitresetHEAD~1命令回退分支记录Git把 master分支移回到C1;现在我们的本地代码库根本就不知道有C2这个提交了。 (注:在reset后,C2所做的变更还在,但是处于未加入暂存区状态。)git-revert...
git reset HEAD hello.txt 然后再执行 git checkout -- hello.txt 就可以丢弃了。 如果已经提交了,那也很简单,直接使用上面的版本退回即可。如果已经推送到远程了,那只能再修改回来然后提交推送了。 如果项目优化后,其中一个文件已经彻底没用了,可以删除了,如何在git仓库中删除呢?首先要从操作系统文件夹中删除文...