git命令

1.git init

闲来无事想把本机里某个文件夹用作git版本库,创建文件夹,在此目录下进入git bash命令页面(一般右击就有),

执行 git init就行,执行完成后,执行git status查看结果,如果不成功会出现如下错误:

$ git status
fatal: Not a git repository (or any of the parent directories): .git

否则就是成功了。

建一个文件进行提交

2.git add test1.txt

3.git commit -m '测试git提交'

注意:git有工作区和暂存区,工作区就是你实际的磁盘看的见的目录文件,git add实际上就是把你工作区的文件修改内容,添加到了暂存区,这个在.git目录里,是个隐藏目录,在当前git仓库的根目录下。你可能一天修改了多个文件。然后晚上一起提交git commit。注意这个commit提交是提交到版本库里了,但也只是在你本地。和远程仓库没有一丁点关系,这个时候你的git仓库仅限于你本地,还没有做任何操作让它和远程库扯上关系

4.git status 查看当前在哪个git分支上,以及会显示工作区是否有修改的一些信息

5.git log查看每次的git 操作记录

图中commit 后面长串数字就是版本号,版本号作用很大特别是用在回退版本的时候。git中HEAD表示最新版本,上一个版本就是HEAD^,上上一个版本是HEAD^^,依次类推,往上一千个版本则是 HEAD~1000

6.git reset --hard HEAD^回退到上一个版本。如果要指定回退到哪个版本,git reset --hard 版本号,跟上版本号就行,版本号不用写全,git会自动查找,如果不知道版本号,则git log可以查到。

7.git reflog 查看命令历史记录,如果你回退到某个版本,此时这个版本之后的操作记录,用git log是查不到的,git log只能查到当前版本之前的操作记录,而此时你发现回退错了,想再回到原来的版本怎么破。这个时候可用git reflog。这个能找到你之前的命令记录可以查到你想要的版本号,然后执行 git reset --hard 版本号。

git的几种撤销场景

场景一:工作区的文件修改,没有添加到暂存区,这个很简单,如果 改的少直接ctril+z就行,但是如果改的内容比较多

执行 git checkout --fileName。checkout这个命令相信大家不陌生,就是把版本库里的代码拉取下来,这里把版本库里的具体文件拉取下来,很明显就是覆盖更新了本地文件,自然就是撤销了你在工作区的修改内容了。checkout 后面的“--”如果没有就变成了切换分支了,这个要注意

场景二:工作区的文件修改,已经添加到暂存区了,即已经执行了 git add 命令,但是还没有提交commit

这种情况需要分两步执行了,第一步把暂存区修改的内容撤销还原,第二步再把工作区的内容撤销(此部分操作就同场景一一样了)

第一步撤销暂存区修改的内容:git reset HEAD fileName,   HEAD代表版本库最新版本了,由于修改的内容还没有commit所以当前版本库最新版本还是之前内容,不包含这次add修改的内容在内。这样reset后,就会把暂存库里的修改覆盖了。

接下来执行第二步,同场景一一样的操作,git checkout  --fileName

场景三:工作区修改了,也添加到暂存区,而且也commit了。这样等于说版本库里已经彻底是被修改了,唯一一点就是还没有push到远程仓库,只是在你本地仓库,别人暂时还看不到。这种场景撤销同样需要两步,第一步先把版本库回退到上一版本,第二步把工作区修改内容撤销。

第一步:回退版本库,git reset --hard HEAD^, git中HEAD^标识上一个版本,前面已有介绍,此处不做重复

第二步:撤销暂存区的内容 git reset HEAD fileName

第三步:撤销工作区修改的内容,git checkout --fileName

如果修改的内容已经push到远程了,那就按照上面的操作撤销后重新push一次,覆盖掉远程仓库的吧!

8.删除文件,删除也是修改的动作。

这个删除就是你直接在本地目录上把文件删除了,此时你工作区就会和版本库中的暂存区不一致了,执行命令git statu就可查看到。添加到暂存区,git add fileName,这里也可以使用git rm fileNme,,其实效果一样的,只是语义上rm似乎容易说的通一点。然后执行git commit,提交到版本库中,如果删除错了依照前面撤销的步骤可撤销。

9.删除git仓库,即不想再让这个目录用作git仓库了,直接删除仓库文件夹下隐藏的.git文件夹即可。这样目录便不再受git管理了

致此,本地目录创建git仓库,已经对仓库内容的增删改查基本告一段落了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值